Нужна помощь в понимании порядка трассировки кода в цикле while - PullRequest
0 голосов
/ 09 октября 2019

Я пытаюсь отследить код цикла while, и я застрял. Как мне справиться с результатом! Если result = false, то! Result = true, поэтому после первого цикла результат затем = true. в следующий раз, когда цикл повторяется, действительно ли результат = false?

РЕДАКТИРОВАТЬ - что я действительно спрашиваю, после первого цикла, изменится ли результат? потому что в конце первого цикла результат равен true, так что в следующий раз, когда вы достигнете!

boolean result = false;
int i = 0;

while (i < arr.length && !result) {
    if (arr[i] == val) {
        result = true;
    }
    i++;
}
return result;

массив: {3, 7, -2, 8, 4}

1 Ответ

2 голосов
/ 09 октября 2019

Это может быть переписано как

while (i < arr.length && result == false) {
    ..
}

В качестве альтернативы вы можете использовать break в if

while (i < arr.length ) {
  if (arr[i] == val) {
      result = true;
      break;
  }
  ....
  i++;
}
...