java实现判断字符串是否全是数字的四种方法代码举例
1.自己实现代码
//判断字符串是否是数字(0.0)
public boolean isNumeric(String str) {
if(str == null || str.equals("")) {
return false;
}
char[] p = str.toCharArray();
for (int i = 0; i < p.length; i++) {
system.out.println("--"+p[i]);
if(!isNum(""+p[i])) {
return false;
}
}
return true;
}
private boolean isNum(String str) {
Pattern pattern = Pattern.compile("[0-9.]*");
Matcher isNum = pattern.matcher(str);
if (!isNum.matches()) {
return false;
}
return true;
}
2 用JAVA自带的函数
public static boolean isNumeric(String str){
for (int i = str.length();--i>=0;){
if (!Character.isDigit(str.charAt(i))){
return false;
}
}
return true;
}
3 用正则表达式
public static boolean isNumeric(String str){
Pattern pattern = Pattern.compile("[0-9]*");
return pattern.matcher(str).matches();
}
4 用ascii码
public static boolean isNumeric(String str){
for(int i=str.length();--i>=0;){
int chr=str.charAt(i);
if(chr<48 || chr>57)
return false;
}
return true;
}