使用Lambda foreach在与空格相同的行中打印

3 java foreach lambda

我刚开始在java中学习Lambda并且使用foreach方法(java.util.stream.IntStream.forEach(IntConsumer action))得到了一些问题.我发现用这种方法打印的常用方法就像

forEach(System.out::println)
Run Code Online (Sandbox Code Playgroud)

我想知道是否有办法在一行中打印所有结果

System.out.print(result + " ");
Run Code Online (Sandbox Code Playgroud)

Era*_*ran 6

是的,您可以使用lambda表达式:

someIntStream.forEach(result -> System.out.print(result + " "));
Run Code Online (Sandbox Code Playgroud)

或者,如果您仍希望使用方法参考,请添加一个mapToObj步骤:

someIntStream.mapToObj(result -> result + " ").forEach(System.out::print);
Run Code Online (Sandbox Code Playgroud)