Android如何判断当前字符串的组成情况(如:全由数字组成)

转载请注明出处,谢谢~~

这是一篇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是连续的,所以可以根据前后的界限值判断。

你可能感兴趣的:(android,工具,封装)