当printing和list我不喜欢布局时:它被打印成一条长线。我更喜欢线条专业元素。

我创建了一个版本来做到这一点,但想知道它是否可以做得更好。

private static void printObjectList(List<?> objects) {
    System.out.println("[");
    objects.forEach(o -> System.out.println("    " + o));
    System.out.println("]");
}

----编辑
凭借Erin的非常好的提示,我将方法改为:

private static void printObjectList(List<?> objects) {
    System.out.println(objects.stream()
           .map(o -> "    " + o)
           .collect(Collectors.joining("    \n", "[\n", "\n]")));
}

我只是不明白参数。我希望:

           .collect(Collectors.joining("\n    ", "[", "\n]")));
分析解答

您可以使用Java 8功能,而不是编写自己的方法。

例如:

System.out.println(objects.stream().map(o -> "    " + o).collect(Collectors.joining ("   \n","[\n","\n]\n")));