我可以在以下代码中添加一个例外,因此,如果用户在控制台中输入了int
而不是String
程序打印错误,则该错误?
String userName = JOptionPane.showInputDialog(null, "Input your name:");
答案 0 :(得分:1)
您可以使用以下方法检查它是否为数字。 (如Pshemo评论How to check if a String is numeric in Java)
public static boolean isNumeric(String str)
{
try
{
double d = Double.parseDouble(str);
}
catch(NumberFormatException nfe)
{
return false;
}
return true;
}
这样称呼
String userName = JOptionPane.showInputDialog(null, "Input your name:");
if(!isNumeric(userName))
{
System.out.println("print your error message");
}
也许您正在寻找一种检查名称是否有效的方法? 如果是这样,您可以使用正则表达式。
String userName = JOptionPane.showInputDialog(null, "Input your name:");
if(!userName.matches("[a-zA-Z]+"))
{
System.out.println("print your error message");
}
答案 1 :(得分:0)
String userName = JOptionPane.showInputDialog(null, "Input your name:");
Char[] test = userName.toCharArray();
foreach(char item : test)
if(test >= '1' && test <= '0') throw new Exception("Not a valid input");