getter和setter的例外

时间:2019-01-25 22:41:54

标签: java exception

我可以在以下代码中添加一个例外,因此,如果用户在控制台中输入了int而不是String程序打印错误,则该错误?

String userName = JOptionPane.showInputDialog(null, "Input your name:");

2 个答案:

答案 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");