возврат в цикл for или внешний цикл

Сегодня кто-то обратил внимание на неправильное использование ключевого слова returnв Java. Я написал простой цикл forдля проверки того, что что-то находится в массиве. Предположим, что arrayявляется массивом длины n, это был мой код:

for (int i = 0; i < array.length; ++i) {
    if (array[i] == valueToFind) {
        return true;
    }
}
return false;

Теперь кто-то сказал мне, что это не очень хорошее программирование, потому что я использую returnвнутри цикла, и это приведет к сбою сборки мусора. Поэтому лучшим кодом будет:

int i = 0;
while (i < array.length && array[i] != valueToFind) {
    ++i;
}
return i != array.length;

Проблема в том, что я не могу придумать правильного объяснения, почему первый цикл for не является хорошей практикой. Кто-нибудь может объяснить?

26
задан Jordan Noel 21 August 2019 в 07:26
поделиться