我正在为我的wgu编程应用课程做一个项目。我决定从上一课程中改编一个基于python的pig-latin转换器。我几乎完成了,但当我运行程序时,我得到一个额外的字。例如,如果我输入拉丁文,它会打印atinlay,然后在下一行打印inlatay。
我不确定是哪部分代码造成的。我知道这应该是一个简单的解决办法,但我就是找不到。这是我的密码:
import java.util.Scanner;
public class PigConverter
{
public static void main(String[] args)
{
Scanner anscay = new Scanner(System.in);
System.out.print("Enter a word:");
String word = anscay.nextLine();
System.out.println("This word, in pig latin, would be:");
String pigConvert;
for (int i=0; i < word.length(); i++)
{
if(word.charAt(i)=='a' || word.charAt(i)=='e' || word.charAt(i)=='i' ||
word.charAt(i)=='o' || word.charAt(i)=='u')
{
String second = word.substring(0,i);
String first = word.substring(i,word.length());
System.out.println(first+second+"ay");
}
}
}
}
1条答案
按热度按时间eyh26e7m1#
我认为你的循环找到了单词中的两个元音,所以它做了两次输出。我认为一旦你找到第一个元音,你的循环就会中断。