Java 用字符串将短语翻译成拉丁语

Java 用字符串将短语翻译成拉丁语,java,string,return,translate,Java,String,Return,Translate,我目前正在编写一个pig拉丁翻译程序,它将字符串分解成单词,然后进行翻译。如果一个单词的前四个字母中有一个是辅音,它会将这些字母移到后面并添加一个ay。如果单词以元音开头,则在单词末尾加上“way” 显然,我的pig拉丁翻译代码并没有输出翻译的字符串,而是将原始英语单词分解成几个不同的部分。我有点纠结于下一步该做什么,如果有人能帮我诊断问题,那就太好了。谢谢 public class WL10Driver { public String convertToPig(String engli

我目前正在编写一个pig拉丁翻译程序,它将字符串分解成单词,然后进行翻译。如果一个单词的前四个字母中有一个是辅音,它会将这些字母移到后面并添加一个ay。如果单词以元音开头,则在单词末尾加上“way”

显然,我的pig拉丁翻译代码并没有输出翻译的字符串,而是将原始英语单词分解成几个不同的部分。我有点纠结于下一步该做什么,如果有人能帮我诊断问题,那就太好了。谢谢

public class WL10Driver {
    public String convertToPig(String english){
        String pigLatin = "";
        int pigLatinWord = 0;
        String vowel = "[aeiouAEIOU]";

        for(int i = 0; i<english.length(); i++){
            char let = english.charAt(i);
            int ind = vowel.indexOf(let);

            if(ind > -1){
                if(i == 0){
                    return english+"yay";
                }
                else{
                    String start = english.substring(0,i);
                    String end = english.substring(i);
                    return end+start+"ay";
                }
            }
        }
        return english+"ay";
    }
}
问题似乎出在调用方法上。我让它显示JOptionPane.showMessageDialognull,英语;。
我应该让JOptionPane显示什么呢?

Google translate试图理解pig拉丁语,但失败了,为什么还要麻烦呢?奇怪的是,代码看起来基本上没有错。稍后我将运行一些测试,但是如何调用convertToPig,请展示相关代码。你不是只检查前4个字母;您正在检查整个单词。if ind>-1的else块中似乎有一个错误,因为您将所有字符放在单词末尾的i之前。
boolean isVowel(char ch) {
    return "aeiouAEIOU".contains("" + ch);
}

public String convertToPig(String english) {
    if (english == null) return null;
    for (int i = 0; i < Math.min(english.length(), 4); i++) {
        char ch = english.charAt(i);
        if (i == 0 && isVowel(ch)) return english + "way";
        if (!isVowel(ch)) {
            String tmp = "";
            if (i < english.length() - 1) tmp = english.substring(i + 1);
            return english.substring(0, i) + tmp + ch + "ay";
        }
    }
    return english;
}