对于我正在编写的程序,我需要向用户询问 1 到 8 之间的整数。我已经尝试了多种(更简洁的)方法来执行此操作,但都没有奏效,所以我只剩下这个:
int x = 0;
while (x < 1 || x > 8)
{
System.out.print("Please enter integer (1-8): ");
try
{
x = Integer.parseInt(inputScanner.next());
}
catch(NumberFormatException e)
{
x = 0;
}
}
其中 inputScanner
是一个扫描器。当然有更好的方法吗?
最佳答案
Scanner 做正则表达式,对吧?为什么不先检查它是否匹配“^[1-8]$”呢?
关于java - 通过 Scanner 保证整数输入的更简单方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/471013/