Я новичок в Java, я написал код на практике петли, и вот это:В чем причина этого бесконечного цикла?
public class scratch {
public static void main(String args[]) {
int value = 0;
boolean myBoolean = (value < 5);
while(myBoolean) {
System.out.println(value);
value = value + 1;
}
}
}
Когда я бегу, я получаю бесконечный цикл, но если я изменить «а» аргумент, как это:
public class scratch {
public static void main(String args[]) {
int value = 0;
boolean myBoolean = (value < 5);
while(value < 5) {
System.out.println(value);
value = value + 1;
}
}
}
это работает, и вот результат:
0
1
2
3
4
Можете ли вы сказать мне, что я здесь отсутствует, спасибо!
Не делает ли этот небольшой эксперимент достаточно ясно, что ваша логическая переменная get оценивается один раз и не заботится о том, как она была инициализирована (т. Е. Она не обновляется при изменении значения)? Что непонятно? – Tom
В первом случае значение 'myBoolean' не изменяется при изменении' value'. Это не во втором случае, но это не имеет значения, потому что вы никогда не используете его значение. –
Boolean = 0 <5 всегда – SaggingRufus