我在java 8中看到了一个迭代集合的代码。
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6);
numbers.forEach(System.out::println);
System.out::println
的功能是什么?以上代码如何迭代List。
运算符::
的用途是什么,我们可以在哪里使用此运算符?
答案 0 :(得分:42)
它被称为&#34;方法参考&#34; ,它是这样的表达式的语法糖:
numbers.forEach(x -> System.out.println(x));
在这里,您实际上需要名称x
,以便为每个元素调用println
。方法参考有用的地方 - ::
运算符表示您将使用参数调用println
方法,该名称未明确指定:
numbers.forEach(System.out::println);