728x90
반응형
package chap10;
interface LambdaInterface3 {
void method(double a);
}
public class LambdaEx3 {
public static void main(String[] args) {
//1
LambdaInterface3 f = new LambdaInterface3() {
@Override
public void method(double a) {
System.out.println(a*5);
}
};
f.method(10);
//2
LambdaInterface3 fi = (x)-> System.out.println(x*5);
fi.method(10);
//3
fi = x -> System.out.println(x*5);
fi.method(10);
//4. calc(x -> System.out.println(x*5),10)
calc(fi,10); //50
calc(fi,20); //100
//calc 메서드를 이용해서 x+x인 값을 출력
calc(x->System.out.println(x+x),10);
calc(x->System.out.println(x+x),100);
//calc 메서드를 이용해서 x*x인 값을 출력
calc(x->System.out.println(x*x),100);
}
static void calc(LambdaInterface3 f, double x) {
//f : x -> System.out.println(x*5)
//x : 10
f.method(x);
}
}728x90
반응형
'study > Java' 카테고리의 다른 글
| [Java] 28. Lambda5 (함수객체에서 지역변수 사용시 지역변수는 상수화 되어야 함.) (0) | 2022.03.23 |
|---|---|
| [Java] 28. Lambda4 (매개변수, 리턴값이 있는 경우) (0) | 2022.03.23 |
| [Java] 28. Lambda2 (매개변수로 사용하기) (0) | 2022.03.23 |
| [Java] 28. Lambda1 (람다의 정의) (0) | 2022.03.23 |
| [Java] 27. 내부클래스3 (내부 클래스 객체에서 사용되는 this) (0) | 2022.03.23 |