java请求一个整数
我试图解决下一个任务: 1.要求用户输入正整数。 2.如果用户添加负数或实数或两者,控制台上应显示下一条错误消息:“输入错误”
这就是我到目前为止所做的
Scanner sc = new Scanner(System.in);
System.out.print("Please, add a positive integer! ");
int num = sc.nextInt();
if (num < 0) {
System.out.println("wrong input");
}
一切正常,但如果用户输入的不是整数而是实数,我无法确保用户收到错误消息。在这种情况下,程序出错
我将非常感谢你的帮助
# 1 楼答案
有时,我发现读入字符串然后尝试解析它更容易。这假定您希望重复提示,直到获得有效的数字
在这里阅读关于NumberFormatException的文章
# 2 楼答案
# 3 楼答案
使用
Scanner.nextInt()
时,输入应为整数。输入任何其他内容,包括实数,都会抛出InputMismatchException
。请确保您的程序不尝试处理无效的输入: