import java.util.Scanner; /*判斷字符串是否是數字格式*/ public class CheckNum { public static void main(String args[]){ Scanner scanner = new Scanner(System.in); System.out.println("請輸入要驗證的字符串:"); String str = scanner.next(); char c[] = str.toCharArray(); for(int i=0;i<c.length;i++){ //利用Character類的isDigit()方法判斷 if(!Character.isDigit(c[i])){ System.out.println("這不是數字字符串"); return; //若有一個字符不是數字則返回 } }System.out.println("這是數字字符串"); } }
知識點:
1.若是需要遍歷一個字符串的各個字符信息,通常需要將字符串轉化成字符數組,即toCharArray(),當然也可以用charAt(int index)進行循環遍歷每一個字符,將其存入char型數組中;
2.Character類是對單個字符進行操作,Character.isDigit()判斷字符是否是數字,返回值是true或false,Character.isLetter(char ch)判斷字符ch是否爲字母
小技巧:
1.快速打出輸出語句System.out.print()的快捷方法是syso+alt+/再回車即可;
2.for中若是錯寫i<=c.length,則會出現成數組引用越界錯誤信息Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException,要熟悉常見的錯誤信息提示,以便快速找出錯誤並修正
除了用java自帶的方法外,還可用正則表達式來判斷,str.matches("[0-9]+")返回boolean值
ps:這個方法只能用於判斷是否是正整數