본문 바로가기
728x90
반응형

study/Java305

[Java] 28. Lambda4 (매개변수, 리턴값이 있는 경우) package chap10; /* * 매개변수, 리턴값이 있는 경우 * (매개변수,매개변수) -> { return 리턴값 }; * 리턴값 : 추상메서드의 리턴타입인 값 * * 구현되는 문장이 return 값 인 경우는 return 구문을 생략 가능 */ interface LambdaInterface4 { int method(int x, int y); } public class LambdaEx4 { public static void main(String[] args) { LambdaInterface4 f = (x,y) -> { return x+y; }; f=(x,y)->x+y; System.out.println(calc(f,10,20)); System.out.println(calc((x,y)->x+y,10.. 2022. 3. 23.
[Java] 28. Lambda3 (메서드를 이용해서 x+x인 값을 출력) 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); /.. 2022. 3. 23.
[Java] 28. Lambda2 (매개변수로 사용하기) package chap10; //매개변수로 사용하기 public class LambdaEx2 { public static void main(String[] args) { //람다방식으로 코딩 LambdaInterface1 fi = () -> System.out.println("람다방식으로 코딩 1"); execute(fi); execute(()->System.out.println("람다방식으로 코딩 2")); //1부터 100까지의 합을 출력하기 fi = () -> { int sum=0; for(int i=0; i { int sum=0; for(int i=0; i 2022. 3. 23.
[Java] 28. Lambda1 (람다의 정의) package chap10; /* * 람다 예제 : jdk8 이후부터 사용 * 람다에서 사용되는 인터페이스는 FunctionalInterface 여야함 * FunctionalInterface : 추상메서드가 한개만 존재하는 경우 * * 매개변수, 리턴타입이 없는 경우 * () -> { ..... } * * 람다식 내부에 구현된 문장이 한개인 경우 {} 생략 가능 */ @FunctionalInterface //@FunctionalInterface 여부 검증 어노테이션 interface LambdaInterface1 { void method(); //void method2(); } public class LambdaEx1 { //static int num = 100; public static void mai.. 2022. 3. 23.
728x90
반응형