【发布时间】:2020-04-05 18:54:49
【问题描述】:
我正在尝试对我的程序进行错误证明,该程序基本上可以用作迷你计算器。但是我不知道如何编写一个“Catch”语句来检测用户何时输入一个不存在的案例编号,在我的案例中是任何负数或 > 4
System.out.println("Hello user! Which operation would you like to use?");
System.out.println("1) + \n2) - \n3) * \n4) /");
Scanner operacijai = new Scanner(System.in);
int operacija = operacijai.nextInt();
int n=1;
do {
try {
switch (operacija) {
case 1:
addingMethod();
n=2;
break;
case 2:
subtractingMethod();
n=2;
break;
case 3:
multiplyingMethod();
n=2;
break;
case 4:
dividingMethod();
n=2;
break;
}
}
catch(Exception e) {
System.out.print("Enter a correct number!");
}
} while(n==1);
operacijai.close();
} ```
【问题讨论】:
-
在您的交换机上使用“默认”子句:w3schools.com/java/java_switch.asp
-
让他们进入不是更容易吗?
+而不是 1? (你可以打开一个字符串) -
@marcellorvalle 当我添加“默认”子句时,它会永远循环下去。
-
@AndyTurner 即使开关是 + - / * 我仍然想以某种方式捕捉错误的输入,以便程序返回开关并要求正确的输入。
-
@Glamy 当然。只是提一下让用户做“如果你想要X请输入Y”的心理体操不是很“防错”,如果他们可以直接输入“X”。
标签: java exception switch-statement