猪拉丁法

时间:2020-09-11 18:19:21

标签: java methods

这是我的Pig Latin的一部分。这是一种方法,我需要返回单词的第一个元音。如果没有元音,我想返回单词长度。但是当我返回单词的长度时出现错误。返回isVowel时,错误为“ else”。

private static int indexOfVowel(String word) {
        int index = 0;
        for (int i = 0; i < word.length(); i++)
            if (isVowel(word.toLowerCase().charAt(i))) {
                return index;
            } else {
                return isVowel(word.length());
            }
            
    } 
    
    private static boolean isVowel(char ch) {
        switch (ch) {
        case 'a':
        case 'e':
        case 'i':
        case 'o':
        case 'u':
        case 'y':
        return true;
        default: return false;
        }
    }
}

1 个答案:

答案 0 :(得分:0)

您不能将整数传递给需要字符的方法。我想您想要的是,如果您在单词中的任何地方都找不到元音,您想返回单词的长度。

因此,在for循环完成之后,您需要返回word.length(),即您查看了单词中的所有字符,但未找到元音。该方法需要写为:

private static int indexOfVowel(String word) {
    int index = 0;
    for (int i = 0; i < word.length(); i++)
        if (isVowel(word.toLowerCase().charAt(i)))
            return index;
    return word.length();
        
}