본문 바로가기
study/Java

[Java] 28. Lambda3 (메서드를 이용해서 x+x인 값을 출력)

by 금이패런츠 2022. 3. 23.
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
반응형