您好,登錄后才能下訂單哦!
1、用正則表達式
首先要import java.util.regex.Pattern 和 java.util.regex.Matcher
/** * 利用正則表達式判斷字符串是否是數字 * @param str * @return */ public boolean isNumeric(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 = 0; i < str.length(); i++) { System.out.println(str.charAt(i)); if (!Character.isDigit(str.charAt(i))) { return false; } } return true; }
3.使用org.apache.commons.lang
org.apache.commons.lang.StringUtils; boolean isNunicodeDigits=StringUtils.isNumeric("aaa123456789"); http://jakarta.apache.org/commons/lang/api-release/index.html下面的解釋: public static boolean isNumeric(String str)Checks if the String contains only unicode digits. A decimal point is not a unicode digit and returns false. null will return false. An empty String ("") will return true. StringUtils.isNumeric(null) = false StringUtils.isNumeric("") = true StringUtils.isNumeric(" ") = false StringUtils.isNumeric("123") = true StringUtils.isNumeric("12 3") = false StringUtils.isNumeric("ab2c") = false StringUtils.isNumeric("12-3") = false StringUtils.isNumeric("12.3") = false
4、判斷ASCII碼值
public static boolean isNumeric0(String str) { for(int i=str.length();--i>=0;) { int chr=str.charAt(i); if(chr<48 || chr>57) return false; } return true; }
5、逐個判斷str中的字符是否是0-9
public static boolean isNumeric3(String str) { final String number = "0123456789"; for(int i = 0;i < number.length; i ++) { if(number.indexOf(str.charAt(i)) == -1) { return false; } } return true; }
6、捕獲NumberFormatException異常
public static boolean isNumeric00(String str) { try{ Integer.parseInt(str); return true; }catch(NumberFormatException e) { System.out.println("異常:\"" + str + "\"不是數字/整數..."); return false; } }
7、用JAVA自帶的函數(只能判斷正整數 )
public static boolean isNumeric(String str){
for (int i = str.length();--i>=0;){
if (!Character.isDigit(str.charAt(i))){
return false;
}
}
return true;
}
以上就是java判斷是否數字的方法詳解的詳細內容,更多請關注億速云其它相關文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。