JAVA (19) 썸네일형 리스트형 람다3 함수형 인터페이스 JAVA.lang에 이미 정의되어 있는 함수형 인터페이스를 사용해 람다를 작성하자. Runnable void run() 매개변수도 없고 , 반환값도 없다. Supplier T.get() 매개변수는 없고 , 반환값만 있음 consumer void accent(T t) 매개변수는 있고 , 반환값이 없음 Function R apply(T t) 일반적인 함수 , 하나의 매개변수를 받아 결과를 반환 Predicate boolean test(T t) 조건식을 표현하는데 사용됨, 매개변수는 하나 반환타입은 boolean ex) supplier f = () -> (int)(Math.random(1*100)+1); consumer f = i -> system.out.println(i + ""); predicate f =.. 람다2 앞에 람다와 스트림1 에서 그래서 결론적으로 람다는 익명객체이기 때문에 참조변수에 넣어주어야 한다. 그러기 위해서는 함수형 인터페이스가 필요하다. 하는 결론이 나왓는데 그에 필요한 람다형 인터페이스를 알아보자. 람다식 , 함수형 인터페이스 단 하나의 추상 메서드만 선언된 인터페이스 @FunctionalInterface interface MyFunction{ public abstract int max (int a, int b); } 위 처럼 함수형 인터페이스를 만들어주고 사용은 다음과 같다. MyFunction f = new MyFunction(){ public int max(int a , int b){ return a > b ? a : b; } } 참조변수를 함수형 인터페이스로 객체를 생성하고 int v.. 람다1 람다식이란 함수(메서드)를 간단한 식(expression)으로 표현하는법 ex) int max (int a , int b){ return a>b ? a :b } 위 식을 (a,b) -> a > b ? a : b 와 같이 표현할 수 있다. 람다식은 익명함수(이름없는 함수 이다) int max(int a , int b){ return a > b ? a : b } 위 식에서 반환 타입 과 함수명을 지우고 화살표를 추가한다. 이 상태를 익명 함수라 한다. (int a , int b) -> { return a > b ? a : b; } 함수와 메서드의 차이 근본적으로는 동일하다 , 함수는 일반적 용어 , 메서드는 객체지향 개념의 언어 함수는 클래스에 독립적 , 메서드는 클래스에 종속적이다 람다식 작성하기 1.메서.. 이전 1 2 3 다음