我需要使用我編寫的isDigit完成allDigits的方法,即 傳遞有效的字符串時,如果字符串的所有字符均爲數字,則返回true,否則返回false。查看字符串是否包含所有數字的方法
到目前爲止,我有:
public static boolean isDigit (char ch){
if (ch >= '0' && ch <= '9')
return true;
return false;
}
public static boolean allDigits(String s){
for (int i =0; i<s.length(); i++)
if(isDigit(s.charAt(i)) == true)
return true;
return false;
}
但如果只說
public static void main(String[] args) {
String s = "abc123";
System.out.println(allDigits(s));
}
OUTPUT返回true:真
但是應該返回false
ALSO:是我的代碼有效?我覺得這是一個更簡單的方法。 任何幫助表示讚賞感謝
您只是檢查數字是否存在。爲了檢查是否全部是數字,通常更容易檢查是否沒有數字並且使答案反向。 –
關於如何實現這個[這裏]有一個很好的答案(http://stackoverflow.com/questions/273141/regex-for-numbers-only)。希望能幫助到你。 – kingkeamo
如果字符串只包含數字,s.matches(「^(\\ d)* $」)將返回true –