我正在嘗試編寫一個需要String
句子(在main method
中給出)的小程序,並計算大寫字符的數量和a的數量。第二部分我有點麻煩。在字符串中獲得正確數量的'a'字符
雖然毫無疑問有多種編寫程序的方法,但我寫了for loops
,它跟蹤了String
,並完成了我的工作。它可以很好地計算大寫字母的值,但對於a,它將每個字母都計爲一個。我可能會瘋了。
public class CountCharacters {
public static void main(String[] args) {
charCount("How many UPPER CASE letters, a's, and 0-9 digits are there in this String?");
}
public static void charCount(String b) {
int upper = 0;
int a = 0;
for (int i = 0; i < b.length(); i++) {
char v = b.charAt(i);
if (Character.isUpperCase(v)) {
upper++;
}
}
for (int i = 0; i < b.length(); i++) {
char t = b.charAt(i);
if (Character.isLetter('a')) {
a++;
}
}
System.out.println("There are " + upper + " upper case letters, and " + a + " lower case a's in the String");
}
}
提示:'Character.isLetter( 'A')'總是返回真實的,因爲「A」是:-)的 – MattR
可能重複一個函[我如何計算一個Java字符串出現序列的次數?](http://stackoverflow.com/questions/5223815/how-do -i-計數的用戶號碼的次-A-序列發生功能於一個-java的字符串) –