java - 将多个字符串分配给单个变量

标签 java string variables

所以我正在做一个保龄球计算器作业,它需要一系列输入并计算分数。我的讲师提供的测试输入有许多测试用例,这些测试用例表示需要计算多少个字符串来计算分数。我遇到的问题是我无法将所有 3 个字符串(有 3 个测试用例)放入一个字符串中,并在不同的行上分开。

这就是输入:

3 --,--,--,--,--,--,--,--,--,--

X,X,X,X,X,X,X,X,X,XXX

X,13,X,81,5/,X,18,33,X,X36

我正在尝试将其格式化为这样:

--,--,--,--,--,--,--,--,--,--

X,X,X,X,X,X,X,X,X,XXX

X,13,X,81,5/,X,18,33,X,X36

但是,当我运行代码时,我得到以下输出:

--,--,--,--,--,--,--,--,--,-- X,X,X,X,X,X,X,X,X,XXX X,13,X,81,5/,X,18,33,X,X36

这是我到目前为止所得到的。

import java.io.*;
import java.util.*;

public class Bowling {
  public static void main(String[] args)  throws FileNotFoundException {
    File inFile = new File("input.txt");
    Scanner scanFile = new Scanner(inFile);

    int tc = scanFile.nextInt();
    String N = "";


    for (int i=0; i < tc; i++)
        N += scanFile.next();
    System.out.println(N);
  }
}

**更新:谢谢大家的回答,由于你们的回答,我学到了很多东西。在问这个问题的时候,我被这个问题束缚住了,没有好好思考。我再次查看了我的代码,意识到我所要做的就是在将字符串添加到变量之前添加这一行:

N += "\n";

再次感谢所有发表评论的人。

最佳答案

我建议使用 StringBuilder如果您要连接很多String。但在循环的每次迭代中,您可以附加换行符:

StringBuilder sb = new StringBuilder();
for (int i=0; i < tc; i++) {
    sb.append(scanFile.next());
    sb.append("\n");
}
System.out.println(sb);

关于java - 将多个字符串分配给单个变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54565074/

相关文章:

java - 如何编写以下场景的正则表达式模式

string - bash:提取路径名的最后两个目录

java - 字符串转int数组

java - 从多个随机字符变量中创建单个字符串变量

php 从 mysql 中选择并接收数据类型

java - 在二维ArrayList中查找某个值/元素

java - 如何在 spring-boot 中为泛型类提供类类型?

java - Java 惯性导航信号处理

c++ - 在 C++ 中声明类时使用私有(private)访问说明符在内存级别提供什么保护?

php - 查询 MySQL 的电子邮件地址并向该地址发送电子邮件