메서드 참조
·
자바/람다식
1. 메서드 참조란? - 메서드 참조는 람다식보다 더욱 간결하게 표현할 수 있는 방법이다. 그러나, 매번 적용할 수 있는 것이 아니고, 람다식이 하나의 메서드만 호출하는 경우에 해당된다. - 총 3가지 경우의 메서드 참조가 있는데, 아래의 예시 코드를 보고 이해하자. (1) static 메서드 참조 : 람다식은 "(x) -> ClassName.method(x)" 이다. : 메서드 참조는 "ClassName::method" 이다. (2) 인스턴스 메서드 참조 : 람다식은 "(obj, x) -> obj.method(x)" 이다. : 메서드 참조는 "ClassName::method" 이다. (3) 특정 객체 인스턴스메서드 참조 : 람다식은 "(x) -> obj.method(x)" 이다. : 메서드 참조는 "o..
Function의 합성과 Predicate의 결합
·
자바/람다식
1. Function 합성 - Function 합성에서는 아래와 같이 defaul과 static이 정의되어 있다. (1) default Function andThen (Function
java.util.function 패키지
·
자바/람다식
1. java.util.function 패키지 - 이 패키지에는 일반적으로 자주 쓰이는 형식의 메서드를 함수형 인터페이스로 미리 정의해 놓았다. - 아래는 대표적 5가지 함수형 인터페이스이다. (1) java.lang.Runnable : 매개변수와 반환값이 없다. (2) Supplier : 매개변수가 없고, 반환값만 있다. (3) Consumer : 매개변수만 있고, 반환값은 없다. (4) Function : 일반적인 함수로 하나의 매개변수를 받아서 결과를 반환한다. (5) Predicate : 조건식을 표현하는데 사용된다. : 매개변수는 하나, 반환타입은 boolean이다. : 반환타입이 boolean인 것을 제외하면 (4) Function과 동일하다. - 매개변수가 두 개인 함수형 인터페이스는 Con..
함수형 인터페이스
·
자바/람다식
1. 함수형 인터페이스 - 람다식을 다루기 위한 인터페이스를 함수형 인터페이스라고 한다. - 일단 먼저 람다식으로 정의된 익명 객체의 메서드를 호출하는 방법의 순서를 알아보자. 1. 첫 번째, 메서드를 정의한 클래스 또는 인터페이스가 무엇인지 확인한다. ( a라는 인터페이스에 max 추상메서드로 정의되어 있다. ) 2. 두 번째, 해당 클래스 또는 인터페이스의 이름을 사용하여 참조변수를 생성한다. 3. 세 번째, 마지막으로 참조변수에 람다식을 써 준다. ( 만약 익명클래스의 객체로 작성하면 아래와 같이 생성된다. ) ( 또한 함수형 인터페이스에는 오직 하나의 추상 메서드만 정의되어 있어야 한다는 제약이 있다. ) ( 그렇게 해야 1:1로 매칭될 수 있기 때문이다. ) ( 반면 static과 default..