我在业余时间创造了一个英超联赛足球桌,我遇到了一个问题。程序运行时,我希望它是完美的,并以我想要的格式输出,问题是:
您输入输入(“HomeTeam:AwayTeam:HomeScore:AwayScore”),如下所示
完成列表后,请输入“退出”以停止程序
我的问题是得分就是这样的 (“HomeTeam | AwayTeam | HomeScore | AwayScore”)
我打算像这样打印(“HomeTeam [HomeScore] | AwayTeam [AwayScore]”)
我已经尝试过System.out.printlns的许多变体无济于事,甚至试图制作几个布尔条件,它们也会以我想要的方式输出输入。我真的很茫然,这令人沮丧 - 我希望有人可以给我提供附加代码的提示
编辑循环;
for (int i = 0; i < counter; i++) { // A loop
String[] words = product_list[i].split(":");
System.out.println(words[0].trim() + "[" + words[2].trim() + "]" + " | " + words[1].trim() + "[" + words[3].trim()) + "]";
答案 0 :(得分:0)
这应该有效:
Scanner sc = new Scanner(System.in);
public void outputScore(String input) {
String[] words = input.trim().split("\\s+");
String satisfied = sc.nextLine();
if (satisfied.equals("quit")) {
System.out.println(words[0] + " [" + words[4] + "] | " + words[2] + " [" + words[6] + "]");
}
}
这就是调用它时方法的样子:
outputScore(sc.nextLine());
以下是您编辑过的问题的代码:
String [] product_list = new String [100];
int counter = 0;
Scanner scanner = new Scanner(System.in);
System.out.println("Input as follows:");
System.out.println("Home team : Away team : Home score : Away score");
String line = null;
while (!(line = scanner.nextLine()).equals("")) {
if (line.equals("quit")) {
break;
} else {
product_list[counter] = line;
System.out.println("Home team : Away team : Home score : Away score");
}
counter++;
}
for (int i = 0; i < counter; i++) {
String[] words = product_list[i].split(":");
System.out.println(words[0].trim() + " : " + words[2].trim() + " | " + words[1].trim() + " : " + words[3].trim());
}
希望这有帮助。