如果输入的值不是整数,我想重新提示(noofcases)用户。我是java的新手。请告诉我最好的方法,我可以提示(noofcases)用户再次输入整数值,直到用户输入一个整数值。
sizeof(int)
答案 0 :(得分:3)
尝试在try {} catch(NumberformatException e)中使用Integer.parse()转换输入字符串,并在新输入请求发生异常时打印到System out。剩下的就是再次读取相同的输入流。如果您想要或计算变量中的失败以中止,您可以在while循环中执行此操作。
答案 1 :(得分:0)
这是我倾向于使用的方法:
public int getNextInt(String promptMessage) {
Integer ret; //We use Integer so it can be null
do {
System.out.println(promptMessage);
String str = in.nextLine(); //nextLine is cleaner and doesn't get caught on newline characters
try {
ret = Integer.parseInt(str);
catch(NumberFormatException e) { //Invalid
System.out.println("Input an integer.");
}
} while(ret==null); //Loop while invalid
return ret; //Return result, unboxed
}