在Java 8中,可以使用lambda:
String s = matrix.stream() .map(row -> row.stream().map(Object::toString).collect(Collectors.joining(","))) .collect(Collectors.joining("\n"));
循环对我来说似乎很好。那说,你 可以 做:
// implementation is simple enough public static Function<Iterable<?>, String> joinFunction(Joiner joiner) { ... } String string = Joiner.on('\n').join( Iterables.transform(matrix, joinFunction(Joiner.on(", "))));
您在那里失去了一些效率,因为您不能将所有文本附加到单个文本中 StringBuilder 但是,我认为循环可能更容易理解。
StringBuilder