如何检查输入是否为整数?

时间:2013-09-07 23:33:18

标签: java

我使用Scanner类将输入作为整数。像这样:in.nextInt(); 如果用户输入了任何浮点数或字符或字符串,我需要提示“错误输入”。 我怎么能做到这一点?

3 个答案:

答案 0 :(得分:1)

如果int包含InputStream作为下一个可读令牌,

nextInt()只能返回int

如果要验证输入,则应使用nextLine()之类的内容来阅读完整的String,并使用Integer.parseInt(thatString)检查是否为整数。

该方法将抛出

  

NumberFormatException - 如果字符串不包含可解析的整数。

答案 1 :(得分:0)

把它放在试试体内。

String input = scanner.next();
int inputInt  0;
try
{
   inputInt = Integer.parseInt(input);
} catch (Exception e)
{
   System.out.println("Wrong input");
   System.exit(-1);
}

答案 2 :(得分:0)

正如我在评论中提到的,请尝试使用try-catch声明

int someInteger;

try {
    someInteger = Scanner.nextInt();    
} catch (Exception e) {
    System.out.println("The value you have input is not a valid integer");
}