Я новичок в Java, и, хотя я думал, что я понял булеву логику достаточно хорошо, я быть отключен с этим времени цикла:Java Boolean во время цикла - Оценка отрицания
boolean done = false;
while(!done) {
String answer = JOptionPane.showInputDialog(null, "message");
if (answer == null) finish();
try {
sales = Double.parseDouble(answer);
if (sales<= 0) throw new NumberFormatException();
else done = true;
}
Я, очевидно, чтение это неправильно, потому что код работает и был взят непосредственно из книги, но так, как я хотел бы оценить это:
сделано = ложь,
в то время как (сделано = истина)
[код]
еще сделано = верно
Так что, казалось бы, что это создаст бесконечный цикл (или не начинать цикл в то время как все), но это не так. Может кто-нибудь, пожалуйста, объясните это?
'в то время (!done) 'равнозначно' while (done == false) ' – Eran
Вам не хватает кода (по крайней мере,' catch' и/или 'finally' предложения' try' и закрывающая скобка для 'while'). Цикл 'while' включает в себя' try'. –
"!" отметьте infront логического значения, измените его исходное значение. (например,! true = false) – kawaijoe