该程序的目标是从文件中获取输入并剥离每个数字并将其转换为文本。我们不能使用字符串操作。 例如 1:一个 21:二一 150:一五零向后打印并在同一行上
但矿山看起来像这样1:一个21:一是一二150:一个一个两个零五一
嗯,我图出了很多,但矿井全部打印在同一行和向后你能指导我在正确的道路
谢谢
public class Main {
/**
* @param args the command line arguments
* @throws java.io.FileNotFoundException
*/
public static void main(String[] args) throws FileNotFoundException {
Scanner scanner = new Scanner(new File("translate.txt"));
while(scanner.hasNextInt()){
int number = scanner.nextInt();
System.out.println(number + ": " +NumberTanslatorTrial.tanslate(number));
// System.out.println(number + ": " + NumberTranslator.translate(number));
}
}
新类
public class NumberTanslatorTrial {
final private static String[] txt = {"zero", "one", "two", "three", "four",
"five", "six", "seven", "eight", "nine"};
static int tempNumber;
static String finalString;
static int tempNumber1;
public static StringBuilder num = new StringBuilder();
public static String tanslate(int number) {
while (number > 9) {
tempNumber = number % 10;
number = number/10;
num.append(txt[tempNumber]);
num.append(" ");
finalString = num.toString();
}
if (number <= 9) {
num.append(txt[number]);
num.append(" ");
finalString = num.toString();
}
return finalString;
}
}
好吧,等NUM添加num.append( “\ n”)<= 9,它给每个输出新行,但仍然是错误的。 – alwill
而不是数学,你可以转换为一个字符串,并分析每个字符... – aliteralmind
@aliteralmind我们不能做字符串操作 – alwill