4

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

4

2 回答 2

8

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

public boolean isInteger(String integerString){

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

NumberFormatException 表示解析不会成功,因此 String 不是整数。

于 2012-11-18T21:10:55.180 回答
4

如果您的意思是您想要一个由数字 0-9 (并且具有任意长度)组成的字符串,您可以使用正则表达式"\\d+",即str.matches("\\d+").

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

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

于 2012-11-18T21:09:53.003 回答