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