我正在寻找一些家庭作业方面的帮助。我希望用户输入一个数字字符串,然后将其转换为整数。但是我想做一个循环,该循环将检测用户是否输入了错误的值,例如与“ 100”相对应的“一百”。
我当时想做的是这样的事情:
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);
但是我不知道如何定义“整数”值。我本质上是希望它查看它是否为数字,以防止在用户输入错误的内容时使其崩溃。
最佳答案
试试这个
int num;
String s = JOptionPane.showInputDialog("Enter a number please");
while(true)
{
if(s==null)
break; // if you press cancel it will exit
try {
num=Integer.parseInt(s);
break;
} catch(NumberFormatException ex)
{
s = JOptionPane.showInputDialog("Not a number , Try Again");
}
}
关于java - Java:检测变量是字符串还是整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14961890/