我對Java很新,我想知道你是否可以幫助我。這裏是我的代碼:計數字符串中的元音和錯誤的輸出?
public static void main(String[] args) {
int vowels = 0;
Scanner input = new Scanner(System.in);
System.out.println ("Enter a string: ");
String string = input.nextLine();
int length = string.length();
for (int i = 0; i <= length; i++) {
String letter = string.substring(i, ++i);
if (letter.equalsIgnoreCase("a")){vowels++;}
if (letter.equalsIgnoreCase("e")){vowels++;}
if (letter.equalsIgnoreCase("i")){vowels++;}
if (letter.equalsIgnoreCase("o")){vowels++;}
if (letter.equalsIgnoreCase("u")){vowels++;}
}
System.out.println ("The number of vowels in " + string + " is: " + vowels);
}
該數字是關閉的,但我不明白爲什麼。
格式化代碼並提出問題 –
關閉多少?它總是一直錯誤嗎?向我們展示一些示例輸入和相應的輸出。作爲一般性建議,我會嘗試在'for'循環中添加更多'System.out.println()'語句。例如,也許在'String letter ...'這行之後,你可以輸出它正在考慮的那個字母,並且在所有'if'語句之後,你可以輸出它到目前爲止計算的元音數。這可能會引導您找到問題的根源。 – DaveyDaveDave
當問題陳述簡單地說「它不起作用」時,很難提供解決方案。請[編輯]您的問題,以更全面地描述您預期會發生什麼以及與實際結果有何不同。看[問]提示什麼是一個很好的解釋。 –