正确的案例
public static boolean isNumericZidai(String str) {
for (int i = 0; i < str.length(); i++) {
System.out.println(str.charAt(i));
if (!Character.isDigit(str.charAt(i))) {
return false;
}
}
return true;
}
看到有人推荐用 bigdecimal ,但是这个有一个问题就是如果是小数点是判断不了的,同时对于负数也是无法判断,错误的示范如下:
public static boolean isNumeric(String str) {
String bigStr;
try {
// 错误的写法,不要复制
bigStr = new Long(str).toString();
} catch (Exception e) {
return false;
}
if (bigStr.length() > maxNum) {
return false;
}
return true;
}