почему срабатывает цикл While (!false) в данном случае
Почему срабатывает цикл While в данное случае?
Переменную isSorted инициировали значением false. Условие для срабатывания цикла - true (!isSorted). Почему цикл срабатывает? Переменная ведь false.
Очень хочу понять.
public static int[] bubbleSort(int[] nums) {
boolean isSorted = false;
while (!isSorted) { // !isSorted = !false = true
isSorted = true;
for (int i = 1; i < nums.length; i++) {
if (nums[i - 1] > nums[i]) {
int temp = nums[i];
nums[i] = nums[i - 1];
nums[i - 1] = temp;
isSorted = false;
}
}
}
return nums;
}
Источник: Stack Overflow на русском