람다식
Java 프로그래밍 - 람다식
interface ComputeTool {
public abstract int compute(int x, int y);
// 람다식의 경우엔 둘중 뭐인지 몰라서 적용이 안됨.
// public abstract int compute2(int x, int y);
}
public class Main {
public static void main(String[] args) {
ComputeTool cTool1 = new ComputeTool() {
@Override
public int compute(int x, int y) {
return x + y;
}
};
System.out.println(cTool1.compute(1, 2));
// 람다식
ComputeTool cTool2 = (x, y) -> { return x + y; };
System.out.println(cTool2.compute(1, 2));
}
}
3
3
// Practice
// 아래 인터페이스를 이용하여 익명클래스로 구현한 내용을 람다식으로 구현해보세요.
interface CompareTool {
public abstract int getMaxNum(int num1, int num2);
}
public class Practice {
public static void main(String[] args) {
// Test code
CompareTool cTool = new CompareTool() {
@Override
public int getMaxNum(int num1, int num2) {
return num1 > num2? num1 : num2;
}
};
System.out.println(cTool.getMaxNum(10, 11));
// 람다식으로 작성
CompareTool cTool2 = (num1, num2) -> { return num1 > num2? num1 : num2; };
System.out.println(cTool2.getMaxNum(10, 11));
}
}
11
11
Leave a comment