1
首先,請原諒我的英文不好。這不是我的母語(這是我的一個問題,你會在後面看到爲什麼)。如何計算包含重音符號的字符串中的元音?
我在Java中做了一個方法,並且建議計算一個字符串的元音。輸入來自Windows提示符,因爲我分別使用javac和java命令編譯和執行。
我寫了一些代碼行來解決這個練習,但是我不能計算有重音符號的元音。例如。當我嘗試「canción」時,它的輸出只計算2個元音。
public static int countVowels(String text){
int answer = 0;
String test = "AEIOUaeiou";
for (int i = 0; i < text.length(); i++)
for (int j = 0; j < test.length(); j++)
if (text.charAt(i) == test.charAt(j)) {
answer++;
break;
}
return answer;
}
public static void form() {
Scanner in = new Scanner(System.in);
System.out.println("This program counts the number of vowels.");
int answer = 0;
String text = "";
while (!text.equals("-1")) {
System.out.print("Enter a line of text (-1 to exit): ");
text = in.nextLine();
answer = Character.countVowels(text);
System.out.println("Number of vowels: " + answer);
}
System.out.println("Closing the program...");
}
我使用掃描儀作爲輸入法。
我試着比較2字符串,因爲我認爲使用if(text.charAt(i) == 'A')
只是無聊(也許我錯了)。
真的,我不知道該怎麼做。我試過使用Ascii值(193 =Á),我試着在測試字符串String test = "AEIOUaeiouÁÉÍÓÚáéíóú";
中寫入帶重音符號的de元音。
沒有用。我會非常感謝可以幫助我的人。
PS,我不允許使用數組。
可能的重複[什麼是檢查一個字符是否是Java中的元音的最佳方法?](http://stackoverflow.com/questions/26557604/whats-the-best-way-to-check-if- a-character-is-a-vowel-in-java) –
因爲這個名字與java.lang.Character'衝突,所以我不會調用你的類'Character'。通常,不要使用'java.lang'包中存在的類名,因爲這會導致很多混淆,因爲它是在每個java源文件中自動導入的。 –
謝謝你的建議,我會編輯。 –