java - 使用 StringBuilder 将字符串的 ArrayList 连接成单个字符串

标签 java string arraylist stringbuilder

在Java中,我试图将ArrayList(称为filesToReport)中的字符串连接成单个字符串,因为我想在对话框中的单个错误消息中显示所有文件名(如果它们不符合某些条件)在文件打开器中。我现在使用的解决方案是 StringBuilder,原则上它是有效的。然而,问题是,如果我例如。打开三个不符合条件的文件,我首先得到一个列出文件号的框。 1,然后出现一个列出文件号的框。 1 和 2,最后是一个列出文件号的框。 1、2、3。最后一个盒子是我想要的单个盒子。有没有办法实现这个目标?

到目前为止我的解决方案如下:

if(filesToReport.size() > 0) {
    StringBuilder sb = new StringBuilder();

    for(String fileToReport : filesToReport) {
        sb.append(fileToReport).append(",");
    }

    String incompatibleFiles = sb.toString();
    String errorMessage = "The following files were not loaded \n" +
                          "as the are incompatible: \n" +
                          incompatibleFiles;
    JOptionPane.showMessageDialog(frame, errorMessage);
}

最佳答案

我看不到此代码片段中的问题,但我的猜测是您将错误消息附加到同一个 filesToReport 列表中。因此它将包含之前的错误消息。

关于java - 使用 StringBuilder 将字符串的 ArrayList 连接成单个字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21161001/

相关文章:

c - 如何比较两个字符串并返回相同单词的数量?

java - 在通配符类型 ArrayList 中添加元素

java - 如何从服务器获取客户端套接字的确认?

Java:透明 JPanel 上的 MouseEvent

java - 从/src/main/resources加载文件

比较 2 个字符串并保存结果

java - 从 tomcat7 连接到 Tuxedo

algorithm - 用 搜索字符串。通配符

java - 在 Java 中警告克隆 ArrayList

java - 无法从我的 Intent 中获取 ArrayList<String>