또 다른 예로 리스트의 요소를 모두 출력한다고 하자. ArrayList 클래스에는 지정한 함수를 각 요소에 적용하는 forEach 메서드가 있다. forEach 메서드는 다음과 같이 호출할 수 있다.
list.forEach(x -> System.out.println(x));
하지만 println 메서드를 forEach 메서드에 전달할 수 있다면 더 좋을 것이다. 다음 방법을 이용하면 된다.
list.forEach(System.out::println);
일련의 예제에서 볼 수 있듯이 :: 연산자는 클래스 이름과 메서드 이름을 분리하거나 객체의 이름과 메서드 이름을 분리한다. 다음 세 가지 형태로 :: 연산자를 사용할 수 있다.
1. Class::instanceMethod
2. Class::staticMethod
3. object::instanceMethod