用Java编写增强的for循环
我正在尝试将以下for循环转换为增强的for循环用Java编写增强的for循环,java,Java,我正在尝试将以下for循环转换为增强的for循环 for(int i=0; i< vowels.length; i++){ if(vowels[i] == Character.toLowerCase(c)){ return true; } } return false; Character.isleter(c)返回boolean非char。不能将布尔值与字符进行
for(int i=0; i< vowels.length; i++){
if(vowels[i] == Character.toLowerCase(c)){
return true;
}
}
return false;
Character.isleter(c)
返回boolean
非char
。不能将布尔值与字符进行比较
您可能需要执行以下操作:
for(char i: vowels){
boolean isChar = Character.isLetter(c);
if(isChar){
if(i ==c){
return true;
}
}
}
编辑:在您的评论之后:您的代码应该类似于:
for(char i: vowels){
if(i == Character.toLowerCase(c)){
return true;
}
}
注意:手写代码,可能有语法错误。您的意思一定是
for (char v: vowels){
if (Character.isLetter(v)) {
return true;
}
}
return false;
现在,您正在将char
与isleter
检查产生的boolean
进行比较
(我将变量名改为v
以强调它是元音,而不是索引。)为什么将toLowerCase
改为isleter
?好的,我注意到它应该是I==Character.toLowerCase(c)
顺便说一句-有一种更简单的方法来检查元音<代码>公共静态布尔ISVOMEL(char c){返回“aeiouy”.indexOf(Character.toLowerCase(c))!=-1;}
for (char v: vowels){
if (Character.isLetter(v)) {
return true;
}
}
return false;