본문 바로가기

WEB/Java

람다식

람다식 lambda expression
    * Java8에 추가된 기능
    * 메서드를 간략한 식으로 표현
    * 익명 함수라고도 불림

 

함수형 인터페이스
    * 람다식 형태로 익명 클래스가 만들어질 수 있는 인터페이스
    * 조건: 추상 메소드가 하나만 있어야함
    * 람다식과 1:1 대응이 되어야 하기 때문
    * @FunctionalInterface 달아줘야햠
   

함수형 인터페이스 예시

 

@FunctionalInterface
public interface Toaster{
    void toast();
}
@FunctionalInterface
public interface Param {

    int func(int i);
}

 

람다식 예시

 

public class Test {
   
    public static void main(String[] args) {

        Toaster toaster1=new Toaster() {
            @Override
            public void toast() {
                System.out.println("람다 사용 X");
            }
        };

        Toaster toaster2=()->{System.out.println("람다식 사용");};
        toaster2.toast();

        Param param1=new Param() {
            @Override
            public int func(int i) {
                return i*i;
            }
        };

        Param param2=(i)-> i*i;
        param2.func(1);

    }
}

 

'WEB > Java' 카테고리의 다른 글

역직렬화 후 추가 가공  (0) 2024.06.16
Bcrypt와 비밀번호 암호화  (0) 2024.05.21
indexOf()  (1) 2024.02.07
예외처리  (1) 2023.12.07
Optioinal  (0) 2023.12.06