我在类中创建一个方法来计算字符串中元音的数量。首先,我创建了一个方法isVowel()
,用于测试字母是否为变量并返回boolean
值。然后我使用isVowel()
方法创建countVowels()
方法。但是,我为countVowels()
方法编写的代码似乎不起作用,但我的isVowel()
方法确实有效,并在字母上测试时返回正确的值。知道我做错了吗?
public int countVowels() {
int i = 0;
int counter = 0;
while (i < text.length()) {
String letter = text.substring(i, i + 1); // the ith letter
if (isVowel(letter) == true) {
counter++;
} else {
counter = counter + 0;
}
i++;
}
return counter;
}
答案 0 :(得分:0)
目前尚不清楚究竟是什么问题。但是,for循环更适合手头的任务而不是while循环。
即
public int countVowels(){
int counter = 0;
for(int i = 0; i < text.length(); i++){
String letter = text.substring(i, i + 1);
if(isVowel(letter))
counter++;
}
return counter;
}
然后你的isVowel
方法应该是:
public boolean isVowel(String c){
String vowels = "aeiouAEIOU";
return vowels.contains(c);
}