方法一:用JAVA自带的函数(只能判断正整数 )
public static boolean isNumeric(String str){
for (int i = str.length();--i>=0;){
if (!Character.isDigit(str.charAt(i))){
return false;
}
}
return true;
}
方法二:正则(推荐,速度最快)
public static boolean isInteger(String str) {
Pattern pattern = Pattern.compile("^[-\\+]?[\\d]*$");
return pattern.matcher(str).matches();
}
方法三:采用正则表达式的方式来判断一个字符串是否为数字,这种方式判断面比较全面,可以判断正负、整数小数 (推荐)
//?:0或1个, *:0或多个, +:1或多个
Boolean strResult = str.matches("-?[0-9]+.?[0-9]*");
if(strResult == true) {
System.out.println("Is Number!");
} else {
System.out.println("Is not Number!");
}
相关阅读 >>
Java中使用lambda表达式检查list集合是否存在某个值
什么是 Java 程序的主类?应用程序和小程序的主类有何不同?
Java stream接口操作 count,anymatch,allmatch,nonematch
Java中map<string,object> map=new hashmap<string,object>的用法
更多相关阅读请进入《Java》频道 >>
深入理解Java虚拟机 JVM高级特性与实践 周志明 第3版
这是一部从工作原理和工程实践两个维度深入剖析JVM的著作,是计算机领域公认的经典。