【发布时间】:2020-07-09 11:13:18
【问题描述】:
该程序旨在导入文本文件并导出文本文件和猪拉丁语翻译。输入是一个单行文本文件,内容为“这是一个黑暗和暴风雨的夜晚”,输出需要如下所示:
It ITWAY
was ASWAY
a AWAY
dark ARKDAY
and ANDWAY
stormy ORMYSTAY
night IGHTNAY
我只得到英文单词,而不是猪拉丁词。当我初始化 pigLatin 时,它会打印初始化的内容,但我无法获得返回值来实际更新变量。请帮忙!
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
public class PigLatinTranslator {
public static void main(String[] args) throws FileNotFoundException {
File textFile = new File("/Users/juliansilvestre/eclipse-workspace/ProgrammingExercise4/src/ProgrammingExercise4TextFile.txt");
Scanner scan = new Scanner(textFile);
String line = scan.nextLine();
String[] wordsInFile = new String[7];
String pigLatin = "";
for (int i = 0; i < wordsInFile.length; i++) {
wordsInFile = line.split(" ");
translatePigLatin(wordsInFile[i], pigLatin);
System.out.println(wordsInFile[i] + "\t" + pigLatin);
}
}
public static String translatePigLatin(String english, String pigLatin) {
String upperCaseWord = english.toUpperCase();
int index = -1;
char ch;
for (int i = 0; i < upperCaseWord.length(); i++) {
ch = upperCaseWord.charAt(i);
if (isVowel(ch)) {
index = i;
break;
}
}
if (index == 0) {
return pigLatin = upperCaseWord + "WAY";
}
else {
String x = english.substring(index);
String y = english.substring(0, index);
return pigLatin = x + y + "AY";
}
}
public static Boolean isVowel(char ch) {
if (ch == 'A' || ch == 'E' || ch == 'I' || ch == 'O' || ch == 'U') {
return true;
}
return false;
}
}
【问题讨论】:
-
这与问题并没有太大关系,但猪拉丁的目的是什么?
-
@RyanStone - 对于另一个网站来说,这可能是一个更好的问题
标签: java