jdk 1.8버전에서 추가된 기능
- 메소드를 하나의 식으로 간단하게 표현함
- 함수형 인터페이스에서만 사용 가능함
- 함수형 인터페이스 : 추상메소드를 하나만 갖고 있는 인터페이스(ex: Runnable)
- 매개변수 타입 생략 가능.
함수형 인터페이스 예시
interface AA{
int add(int a, int b);(abstract 생략)
}
interdace BB{
void draw();
}
형식1. 메소드가 void형일때
자료형 변수=(매개변수)->{메소드 실행코드};
BB b=()->{System.out.println(출력문)};
b.draw();
형식2. return형 메소드(int, String 등):
실행문장이 하나면 메소드 실행코드에서 {},return 생략이 가능함
자료형 변수=(매개변수)->{return 메소드실행코드;};
변수.메소드(인자);
AA a=(a,b)->{return a+b;};
System.out.println(a.add(6,7));
//생략
자료형 변수=(매개변수)->메소드실행코드;
변수.메소드(인자);
AA a=(a,b)->a+b;
System.out.println(a.add(8,6));