【发布时间】:2020-02-17 04:14:20
【问题描述】:
我已经(尴尬地)坐在这里好几个小时了,试图让一个 do-while 循环来接受用户输入,直到它有效为止,但是当涉及到我使用的布尔值时,我似乎搞砸了尝试退出循环。每当我可以让程序部分工作时,catch 异常就会无限重复。
Scanner scnr = new Scanner(System.in);
double wallHeight = 0.0;
boolean valid = false;
// Implement a do-while loop to ensure input is valid
// Prompt user to input wall's height
do {
try {
System.out.println("Enter wall height (feet): ");
wallHeight = scnr.nextDouble();
valid = false;
if (wallHeight <=0) {
throw new Exception ("Invalid Input");
}
}
catch (Exception e) {
System.out.println("Invalid Input");
}
} while (!valid);
【问题讨论】:
-
在上传两次将有效变量设置为false的代码时似乎也犯了错误。那是偶然的。
标签: java input try-catch do-while