Java中判断字符串是否为数字的五种方法 (转)

推荐使用第二个方法,速度最快。

方法一:用JAVA自带的函数

Java代码 复制代码 收藏代码
  1. public static boolean isNumeric(String str){   
  2.   for (int i = str.length();--i>=0;){     
  3.    if (!Character.isDigit(str.charAt(i))){   
  4.     return false;   
  5.    }   
  6.   }   
  7.   return true;   
  8. }  
public static boolean isNumeric(String str){
  for (int i = str.length();--i>=0;){  
   if (!Character.isDigit(str.charAt(i))){
    return false;
   }
  }
  return true;
}



方法二:

Java代码 复制代码 收藏代码
  1. /*  
  2.   * 判断是否为整数   
  3.   * @param str 传入的字符串   
  4.   * @return 是整数返回true,否则返回false   
  5. */  
  6.   
  7.   
  8.   public static boolean isInteger(String str) {     
  9.     Pattern pattern = Pattern.compile("^[-\\+]?[\\d]*$");     
  10.     return pattern.matcher(str).matches();     
  11.   }  
/*
  * 判断是否为整数 
  * @param str 传入的字符串 
  * @return 是整数返回true,否则返回false 
*/


  public static boolean isInteger(String str) {  
    Pattern pattern = Pattern.compile("^[-\\+]?[\\d]*$");  
    return pattern.matcher(str).matches();  
  }



方法三:

Java代码 复制代码 收藏代码
  1. public static boolean isNumeric(String str){   
  2.     Pattern pattern = Pattern.compile("[0-9]*");   
  3.     return pattern.matcher(str).matches();      
  4. }  
public static boolean isNumeric(String str){
    Pattern pattern = Pattern.compile("[0-9]*");
    return pattern.matcher(str).matches();   
}



方法四:

Java代码 复制代码 收藏代码
  1. public final static boolean isNumeric(String s) {   
  2.         if (s != null && !"".equals(s.trim()))   
  3.             return s.matches("^[0-9]*$");   
  4.         else  
  5.             return false;   
  6.     }  
public final static boolean isNumeric(String s) {
		if (s != null && !"".equals(s.trim()))
			return s.matches("^[0-9]*$");
		else
			return false;
	}



3方法五:用ascii码

Java代码 复制代码 收藏代码
  1. public static boolean isNumeric(String str){   
  2.    for(int i=str.length();--i>=0;){   
  3.       int chr=str.charAt(i);   
  4.       if(chr<48 || chr>57)   
  5.          return false;   
  6.    }   
  7.    return true;   
  8. }   
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;
} 



文章地址:
http://javapub.iteye.com/blog/666544

 

posted @ 2015-06-26 11:16  沧海一滴  阅读(563)  评论(0编辑  收藏  举报