✏️ 개요
- 메서드 레퍼런스는 메서드의 참조를 다루는 함수형 프로그래밍에서 사용되는 연산자이다.
::
로 표현하며 :: 연산자
라고도 불리운다.
- 메서드를 함수처럼 전달하거나 참조할 수 있어 코드를 간결하게하고,
가독성을 높일 수 있다.
✏️ 사용 방법
📍 1. 정적 메서드 레퍼런스
클래스명::정적메서드
- static 메서드를 참조할 때 사용할 수 있다.
- list 의 인덱스를 하나하나 출력시키는 예제
list.stream()
.forEach(System.out::println);
📍 2. 인스턴스 메서드 레퍼런스
참조객체::인스턴스 메서드
- 특정 객체의 메서드를 참조하고 해당 메서드의 인자에 인덱스를 넣어서 반환값으로 변환함
list.stream()
.map(String::toUpperCase)
.forEach(System.out::println);
📍 3. 생성자 레퍼런스
객체명::new
- 객체의 생성자를 호출해 인덱스를 인자값으로 넘겨 생성된 인스턴스 객체로 변환함
List<ReqDto> newList = list
.stream()
.map(ReqDto::new)
.collect(Collectors.toList();