当前位置: 首页 > 知识库问答 >
问题:

“system.out::println”在Java 8[duplicate]中有什么用途

祁权
2023-03-14

我在Java8中看到一个迭代集合的代码。

List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6);
numbers.forEach(System.out::println);

system.out::println的功能是什么?以及上面的代码如何在列表中迭代。

运算符::有什么用途,还有什么地方我们可以使用这个运算符呢?

共有1个答案

沃阳飙
2023-03-14

它被称为“方法引用”,它是用于以下表达式的语法糖:

numbers.forEach(x -> System.out.println(x));

在这里,您实际上不需要名称x来为每个元素调用println。这就是方法引用很有帮助的地方-::运算符表示您将使用一个参数调用println方法,而您没有显式指定该参数的名称:

numbers.forEach(System.out::println);
 类似资料: