如何检查字符是否为元音?
这段Java代码给我带来了麻烦:
String word = <Uses an input> int y = 3;
char z;
do {
z = word.charAt(y);
if (z!='a' || z!='e' || z!='i' || z!='o' || z!='u')) {
for (int i = 0; i==y; i++) {
wordT = wordT + word.charAt(i);
} break;
}
} while(true);
我想检查单词的第三个字母是否是非元音,如果是,我希望它返回非元音和它前面的任何字符。如果是元音,则检查字符串中的下一个字母;如果它也是元音,则检查下一个字母,直到找到非元音为止。
例:
单词= Jaemeas,然后wordT必须= Jaem
范例2:
word = Jaeoimus,然后wordT必须= Jaeoim
问题在于我的if
陈述,我想不出如何检查那一行中的所有元音。
回答:
您的情况有缺陷。考虑一下更简单的版本
z != 'a' || z != 'e'
如果z
为,'a'
则后半部分将为真,因为z
不为真'e'
(即整个条件为真),如果z
为,'e'
则上半部分将为真,因为z
不为真'a'
(同样,整个条件为真)。当然,如果z
两者都不'a'
是,'e'
那么两个部分都将成立。换句话说,您的情况永远不会为假!
您可能希望&&
在那儿:
z != 'a' && z != 'e' && ...
也许:
"aeiou".indexOf(z) < 0
以上是 如何检查字符是否为元音? 的全部内容, 来源链接: utcz.com/qa/414661.html