【发布时间】:2014-02-23 05:28:32
【问题描述】:
谁能帮我把这段代码弄得更整洁。我宁愿使用 parse int 而不是缓冲区阅读器。我希望我的代码循环,直到用户输入一个数字。如果代码不打印两次相同的语句,我无法弄清楚如何做到这一点。
public void setAge()
{
try {
age = Integer.parseInt(scan.nextLine());
} catch (NumberFormatException e) {
System.out.println("What is your age?");
this.setAge();
}
}
好的,我的问题不清楚。当您不输入整数时,我不确定如何处理扫描仪抛出的错误。我该如何处理?我在另一篇文章中发现了“NumberFormatException”,但我不确定这是做什么的。谁能帮我解决这个问题,还是我的问题还不清楚?
【问题讨论】:
-
如果你使用
Scanner的nextInt方法并且输入不是一个int,它会抛出一个InputMismatchException。检查我的答案,看看是否是您需要的。
标签: java input error-handling integer try-catch