【轉】Java中判斷字串是否為數字的五種方法

powerx_yc發表於2017-12-08

原文地址

//方法一:用JAVA自帶的函式
public static boolean isNumeric(String str){
   for (int i = str.length();--i>=0;){  
       if (!Character.isDigit(str.charAt(i))){
           return false;
       }
   }
   return true;
}
/*方法二:推薦,速度最快
  * 判斷是否為整數 
  * @param str 傳入的字串 
  * @return 是整數返回true,否則返回false 
*/

  public static boolean isInteger(String str) {  
        Pattern pattern = Pattern.compile("^[-\\+]?[\\d]*$");  
        return pattern.matcher(str).matches();  
  }
//方法三:
public static boolean isNumeric(String str){
    Pattern pattern = Pattern.compile("[0-9]*");
    return pattern.matcher(str).matches();   
}
//方法四:
public final static boolean isNumeric(String s) {
    if (s != null && !"".equals(s.trim()))
        return s.matches("^[0-9]*$");
    else
        return false;
}
//方法五:用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;
}

相關文章