1. 람다 인터페이스
- 자바에서의 람다는 기본적으로 인터페이스로 구현한다.
- 람다 구현을 위한 인터페이스는 기본적으로 반드시 추상 함수가 1개.
- 람다를 위한 인터페이스란 의미의 @를 제공하기 시작
@FunctionalInterface
interface Printable{
public abstract void print(String s);
}
1-1. 계산하는 람다 식 만들기
@FunctionalInterface
interface Calculate{
void cal(int a, int b);
}
public class lambda_example {
public static void main(String args[]) {
Calculate cal;
cal = (a, b) -> System.out.println(a+b);
cal.cal(4, 3);
}
}
@FunctionalInterface
interface Printable{
public abstract void print(String s);
}
@FunctionalInterface
interface Calculate{
void cal(int a, int b);
}
public class lambda_example {
public static void main(String args[]) {
Calculate cal;
cal = (a, b) -> System.out.println(a+b);
cal.cal(4, 3);
cal = (a, b) -> System.out.println(a-b);
cal.cal(4, 3);
cal = (a, b) -> System.out.println(a*b);
cal.cal(4, 3);
}
}
@FunctionalInterface
interface Calculate2 {
int cal(int a, int b);
}
public class lambda_example {
public static void main(String args[]) {
Calculate2 cal2;
cal2 = (a, b) -> {
a + b;
};
System.out.println(cal2.cal(3, 4));
}
}
1-2. 길이를 구하는 람다 식
@FunctionalInterface
interface HowLong {
int len(String s);
}
public class lambda_example {
public static void main(String args[]) {
HowLong len;
len = s -> s.length();
System.out.println(len.len("helloworld"));
System.out.println(len.len("sourcetree"));
System.out.println(len.len("chicken"));
}
}