我正在寻找一些有关我的功课的帮助。我希望用户输入一个数字字符串,然后将其转换为整数。但是我想制作一个循环来检测用户是否输入了错误的值,例如“One Hundred”与“100”相对应。Java:检测变量是一个字符串还是一个整数
我在想什么是应该做这样的事情:
do{
numStr = JOptionPane.showInputDialog("Please enter a year in numarical form:"
+ "\n(Ex. 1995):");
num = Integer.parseInt(numStr);
if(num!=Integer){
tryagainstr=JOptionPane.showInputDialog("Entered value is not acceptable."
+ "\nPress 1 to try again or Press 2 to exit.");
tryagain=Integer.parseInt(tryagainstr);
}
else{
*Rest of the code...*
}
}while (tryagain==1);
但我不知道如何定义“整数”的价值。我基本上想让它看看它是否是一个数字,或者如果用户输入错误的东西来防止它崩溃。
'尝试'的东西。 – 2013-02-19 16:05:20
['Integer.parseInt'](http://docs.oracle.com/javase/6/docs/api/java/lang/Integer.html#parseInt%28java.lang.String%29)方法抛出'NumberFormatException'如果输入不能作为整数解析。你只需要使用'try/catch'。 – 2013-02-19 16:07:21