转载请注明出处,谢谢~~
这是一篇Android工具类的博客,记载常用的三种判断方式,我们知道,c语言中有库文件封装了对字符集的操作和判断,那么Android中该如何操作,下面是具体代码:
第一种方式,也是最简单的方式:
/**
* 判断字符串是否只包含数字
* @param str
* @return
*/
public static boolean isNumeric(String str){
Pattern pattern = Pattern.compile("[0-9]*");
return pattern.matcher(str).matches();
}
这是我最喜欢用的方式,简单而直接。
第二种方式,通过java提供的api来判断:
/**
* Character.isDigit()是java提供的API,这个跟C语言的很像。
*/
public static boolean isNumeric(String str){
for (int i = str.length();--i>=0;){
if (!Character.isDigit(str.charAt(i))){
return false;
}
}
return true;
}
第三种方式,通过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;
}
这是最容易理解的方式,因为数字的ASCII是连续的,所以可以根据前后的界限值判断。