这是一个涉及 try/catch 块的家庭作业的问题。对于 try/catch,我知道您将要测试的代码放在 try 块中,然后将要发生的代码放在 catch 块中以响应异常,但是在这种特殊情况下如何使用它?
用户输入一个存储在 userIn 中的数字,但如果他输入一个字母或除数字之外的任何内容,我想抓住它。用户输入的数字将在 try/catch 之后的 switch 语句中使用。
Scanner in = new Scanner(System.in);
try{
int userIn = in.nextInt();
}
catch (InputMismatchException a){
System.out.print("Problem");
}
switch(userIn){...
当我尝试编译时,它返回符号未找到,对应于 switch 语句开头的行号 switch(userIn){。几次搜索后,我发现在 try 块之外看不到 userIn,这可能是导致错误的原因。如何测试 userIn 的正确输入以及在 try/catch 之后让 switch 语句看到 userIn?