컴퓨터공학 💻 도서관📚

Part2. 6-3 함수형 인터페이스와 람다식 구현하여 사용하기 본문

✅🌲강의 복습 노트/패캠 JavaSpring 강의,코드 복습

Part2. 6-3 함수형 인터페이스와 람다식 구현하여 사용하기

들판속초록풀 2025. 7. 25. 22:03

함수형 인터페이스 선언하기

  • 람다식을 선언하기 위한 인터페이스
  • 익명 함수 매개 변수만으로 구현되므로 인터페이스는 단 하나의 메서드만을 선언해야 한다
    (익명함수이므로 메서드가 2개 이상 있으면 어느 인터페이스를 구현했는지가 모호해지기 때문이다.)
  • @FunctionalInterface 애노테이션(annotation)
    함수형 인터페이스라는 의미내부에 여러 개의 메서드를 선언하면 에러남
@FunctionalTnterface     // @FunctionalInterface 애노테이션
public interface Add {
	public int add(Int x, int y);
}

람다식 구현과 호출  (두 수를 비교하는 코드)

@FunctionalInterface
public interface MyNumber {
	int getMax(int num1, int num2);
}
public class TestMyNumber {

	public static void main(String[] args) {
		MyNumber max = (x, y)->(x>= y)? x:y;  // 람다식을 인터페이스 자료형 max 변수에 대입
                                          // 실행문이 한 문장의 반환문인 경우 : 조건연산자 활용
		System.out.println(max.getMax(10, 20));  // 인터페이스 자료형 변수로 함수 호출
			
	}
}

 

(x >= y) ?  x : y;

(이것도 실행문이 한 문장의 반환문인 경우이다.)

 

(x >= y) ?    가    if문이라고 생각하면 싶다.   (x >= y)  if   이런 느낌

그리고   x : y;  에서   1번째가 참일 때 ,  2번째가 거짓일 때

 

 

 

Comments