我不明白关于以下问题的额外信用问题。我已经实现了 try-catch 语句并且似乎工作正常,但是我们的讲师现在希望我们boolean
在循环条件中使用变量而不是data !=0。我正在猜测:
while(data!=0.0)
但这将如何运作?我是否完全摆脱它而只使用boolean
我已经创建的?PS:我意识到这可能非常简单,我只是没有看到它。
import java.util.*;
public class SumInput {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
double data = 1.0;
double sum = 0.0;
boolean valid = false;
while (!valid) {
try {
while (data != 0.0) {
System.out.print("So far, sum = " + sum
+ "\nEnter a number or 0 to exit: ");
data = input.nextDouble();
sum = sum + data;
valid = true;
}
} catch (InputMismatchException e) {
System.out.println("Error--please enter a double number");
input.next();
} catch (NoSuchElementException e) {
System.out.println("\nGoodbye!");
System.exit(0);
}
}
System.out.println("Ending sum: " + sum);
}
}