如何防止扫描仪在输入错误类型时引发异常?
下面是一些示例代码:
import java.util.Scanner;
class In
{
public static void main (String[]arg)
{
Scanner in = new Scanner (System.in) ;
System.out.println ("how many are invading?") ;
int a = in.nextInt() ;
System.out.println (a) ;
}
}
如果我运行程序并给它一个类似,那么一切都会顺利。int
4
另一方面,如果我回答,它不会嘲笑我的有趣笑话。相反,我得到这个(如预期):too many
Exception in thread "main" java.util.InputMismatchException
at java.util.Scanner.throwFor(Scanner.java:819)
at java.util.Scanner.next(Scanner.java:1431)
at java.util.Scanner.nextInt(Scanner.java:2040)
at java.util.Scanner.nextInt(Scanner.java:2000)
at In.main(In.java:9)
有没有办法让它忽略不是int的条目,或者用“有多少人入侵”重新提示?我想知道如何做到这两点。