我是Java的新手,目前正在制作一个像基于文本的游戏一样运行的业务模拟器。我希望玩家能够输入他们每小时想要支付给雇员多少钱,但是我确信有人会尝试在输入中输入字母,或者在尝试输入数字时偶然按下键。这给了我一个错误,我不确定如何防止这种事情发生。
我尝试创建一种方法,该方法可以使用输入,数字或字母的整个行,并去除数字以外的所有字符,但这可能是不准确的,并且非常不方便。
答案 0 :(得分:1)
使用try catch
try
{
Integer.parseInt(scanner.nextInt());
System.out.println(scanner.nextInt() + " is a valid integer number");
}
catch (NumberFormatException e)
{
System.out.println(scanner.nextInt() + " is not a valid integer number");
}
答案 1 :(得分:1)
使用try catch
,您要查找的异常是InputMismatchException
:
Scanner scanner = new Scanner(System.in);
try {
scanner.nextInt();
}
catch(InputMismatchException e) {
e.printStackTrace();
}