프로그래밍/JAVA

람다식 ::

프루니에 2021. 7. 15. 20:57

람다식이 하나의 메소드만 호출하는 경우, 메소드 참조를 통해 람다식을 간략히 할 수 있습니다.
클래스명::메소드명 or 참조변수::메소드명

// 기존
Function<String, Integer> f = (String s) -> Integer.parseInt(s);

// 메소드 참조
Funcation<String, Integer> f = Integer::parseInt;

생성자를 호출하는 람다식도 메소드 참조로 변환 가능

Supplier<MyClass> s = () -> new MyClass();  // 람다식
Supplier<MyClass> s = MyClass::new; // 메소드 참조

배열 생성할 경우

Function<Integer, int[]> f = x -> new int[x]; // 람다식
Function<Integer, int[]> f2 = int[]::new; // 메소드 참조