Java跳过其他if语句

时间:2019-10-17 16:43:40

标签: java if-statement

输入以“ th”开头的单词时,应执行else if语句,但是由于某种原因,它会被跳过,而改为执行else语句。请帮我,我没看错。

Ignore the generally sloppy code I'm new to this.

import java.util.*;

public class PigLatin {

public static void main(String[] args) {
        Scanner console = new Scanner(System.in);
        System.out.print("Please enter a word ==> ");

        String englishWord = readWord(console);
        String pigLatinWord = convertWord(englishWord);
        printResult(englishWord, pigLatinWord);

    }

    public static String readWord(Scanner console) {
        String englishWord = console.next();
        return englishWord;

    }

    public static String convertWord(String englishWord) {
        boolean vowel = isVowel((englishWord.toLowerCase()).charAt(0));

        if (vowel == true) {
            String firstPartV = englishWord + "-way";
            return firstPartV;
        } else if ((englishWord.toLowerCase()).substring(0, 2) == "th") {
            String firstPartTh = englishWord.substring(2) + "-" + englishWord.substring(0, 2) + "ay";
            return firstPartTh;
        } else {
            String firstPartC = englishWord.substring(1) + "-" + englishWord.charAt(0) + "ay";
            return firstPartC;

        }

    }

    public static boolean isVowel(char c) {

        if (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u') {
            return true;
        } else {
            return false;
        }
    }

    public static void printResult(String englishWord, String pigLatinWord) {

        System.out.print(("\"" + englishWord + "\"\n") + "  in Pig Latin is\n" + ("\"" + pigLatinWord + "\"\n"));
    }

}

0 个答案:

没有答案