【发布时间】:2013-10-10 06:05:05
【问题描述】:
这段 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);
我想检查单词的第三个字母是否是非元音,如果是,我希望它返回非元音及其前面的任何字符。如果是元音,则检查字符串中的下一个字母,如果也是元音,则检查下一个字母,直到找到非元音为止。
例子:
word = Jaemeas 然后 wordT 必须 = Jaem
示例 2:
word=Jaeoimus 然后 wordT 必须 =Jaeoim
问题在于我的if 语句,我不知道如何让它检查这一行中的所有元音。
【问题讨论】:
-
z!='a'||z!='e'...总是会失败。z不能同时等于a和e(等等)。请改用&&。 -
我想让 if 检查它不是 'a' 'e' 'i' 'o' 'u',我该如何构造那个 if 语句?
-
就是这个。但是你看到了 AND。
-
别忘了
yvowel!而且我对您的if条件有点困惑:每个字母都与a或e等不同...改用AND运算符 -
@KyleMHB 请不要通过编辑来回答您的问题。如果您找到了解决方案,请将其发布为您自己问题的答案。
标签: java string char indexof truncation