【发布时间】:2017-02-23 02:23:07
【问题描述】:
所以我很难找到字符串中第一个元音的索引。这是我想出的代码,但它没有返回任何内容。 它应该返回第一个元音的索引,例如,如果字符串是“Hello World”,它应该返回 1,因为第一个元音的索引是“e”。如果给定字符串中没有元音,它应该返回 -1。
public class Vowel
{
public static int isVowel(String s)
{
int a = -1;
for(int i = 0; i < s.length(); i++)
{
if("aeiouAEIOU".indexOf(i) >= 0)
{
a = i;
}
}
return a;
}
}
【问题讨论】:
-
你的意思是
indexOf(s.charAt(i)),你需要退出循环,否则你会找到元音的last索引。投票结束,因为“不能再被复制”,因为这不太可能对其他人有任何用处。 -
你解决了吗?
-
仅供参考: 方法名称具有误导性。
isVowel()听起来应该返回一个布尔值,并没有表明int返回值是什么。好名字可能是indexOfFirstVowel()。 -
我还没弄明白。我做了安德烈亚斯的建议,但现在它给了我一个错误。我在 if 语句中放了一个中断,但我不确定如何结束循环。 @ItamarGreen
-
放一个break结束循环
标签: java string if-statement for-loop return