【发布时间】:2014-06-08 21:13:41
【问题描述】:
我目前正在编写一个猪拉丁语翻译器,它将字符串分解成单词,然后翻译它们。如果一个单词的前四个字母中的任何一个是辅音,它会将这些字母移到后面并添加一个“ay”。如果单词以元音开头,则在单词末尾添加“way”。
显然,我的猪拉丁语翻译器代码不会输出翻译后的字符串,而是将原始英文单词分解成几个不同的部分。我有点不知道下一步该怎么做,如果有人可以帮助我诊断问题,那就太好了。谢谢!
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.showMessageDialog(null,english);。
我应该让 JOptionPane 显示什么?
【问题讨论】:
-
谷歌翻译尝试并未能理解猪拉丁语,为什么还要麻烦?
-
奇怪,代码看起来基本没有错。稍后我将运行一些测试,但是您如何调用
convertToPig,显示有关此的代码。您不只检查前 4 个字母;您正在检查整个单词。 -
似乎有一个错误出现在 (if ind > -1) 的“else”块中,因为您将 i 之前的所有字符都放在了单词的末尾。
标签: java string return translate