核心代码如下(利用正则表达式判断):
public static boolean isNumber(String str) { if (StringUtils.isNotEmpty(str)) { String reg = "^[0-9]+(.[0-9]+)?$"; return str.matches(reg); } return false; }
如果仅仅是非浮点型数据,也可以使用下面这段代码:
public static boolean isNumberJava(String str) { for (int i = 0; i < str.length(); i++) { if (!Character.isDigit(str.charAt(i))) { return false; } } return true; }
不管浮点或者非浮点类型数据,我个人倾向于正则表达式,因为它看起来非常简洁。