如何检查字符串只包含JAVA中的int?

时间:2012-11-18 21:06:38

标签: java

我希望写一个小方法来做以下事情: 例如,字符串a =“a123”,则该方法应返回fulse; 字符串b =“111”,它应该返回true。 这意味着只有字符串是int,它应该返回true,所有其他情况应该返回false。 有人能帮帮我吗?谢谢!

2 个答案:

答案 0 :(得分:8)

您可以使用Integer.parseInt(integerString);

public boolean isInteger(String integerString){

   try{
      Integer.parseInt(integerString);
      return true;
   } catch (NumberFormatException nfe) {
      return false;
   }
}

NumberFormatException意味着解析不会成功,因此String不是整数。

答案 1 :(得分:4)

如果你的意思是你想要一个只包含的数字0-9(和任意长度)的字符串,你可以只使用正则表达式"\\d+",即str.matches("\\d+")

如果您想考虑正面和负面的迹象,可以使用"[+-]?\\d+"

如果你考虑长度(原始int拼写错误不能超过10位数),你可以使用"[+-]?\\d{1,10}+"