Java 用分隔符在同一行打印数组

Java Print array on the same line with separator

我有一个 class 正在从文件中读取特定列并将其插入到数组中。我想将该数组打印在带有逗号分隔符的同一行上。

下面是我的代码:

public static void getArray(int Column, File path, String Splitter) throws IOException
{
    List<String> lines = Files.readAllLines(path.toPath(), StandardCharsets.US_ASCII); 

    for (String line : lines) 
    { 
        String[] array = line.split(Splitter); 

         //Will return all elemetns on the same line but without any separation, i need some kind of separation 
         // if i use System.out.print(array[Column]+" ,");
         // i will always get a , at the end of the line
        System.out.print(array[Column]);

    }
}


getArray(3, file, "|");

当前输出为:

abcdefg

期望的输出是:

a,b,c,d,e,g

您可以使用 joining 收集器。

用分隔符,连接数组的元素。

String result = Arrays.stream(array)
                      .collect(Collectors.joining(","));

用分隔符 ,.

连接数组中给定元素的字符
String result = Arrays.stream(array[Column].split(""))
                      .collect(Collectors.joining(","));

用分隔符 ,:

连接数组中给定元素的字符的另一种变体
String result = array[Column].chars()
                             .mapToObj( i -> String.valueOf((char)i))
                             .collect(Collectors.joining(","));

您可以在没有流的情况下进行(在 Java 8+ 中,对于 String.join):

String.join(",", array)

但您也可以使用普通的旧循环来完成:

String delim = "";
for (String part : array) {