SeouliteLab

[Java] 람다 표현식(Lambda Expression) 본문

프로그래밍

[Java] 람다 표현식(Lambda Expression)

Seoulite Lab 2024. 2. 27. 17:11

Java 8부터 도입된 람다 표현식(Lambda Expression)은 함수형 프로그래밍을 지원하여 코드를 간결하게 작성할 수 있게 해주는 기능이다. 람다 표현식은 익명 함수(Anonymous Function)를 생성할 수 있어서 메서드를 간단하게 표현할 수 있다.

람다 표현식의 기본 문법은 다음과 같다.

(parameter_list) -> {body}

여기서 parameter_list는 메서드에 전달되는 인자의 리스트이고, body는 메서드의 기능을 구현하는 코드 블록이다.

예를 들어, 리스트의 각 요소를 출력하는 메서드를 람다 표현식으로 표현하면 다음과 같다.

List<String> list = Arrays.asList("apple", "banana", "orange");
list.forEach(item -> System.out.println(item));

위의 코드에서 forEach 메서드는 리스트의 각 요소를 반복하며 람다 표현식으로 주어진 동작을 수행한다.

람다 표현식은 함수형 인터페이스(Functional Interface)와 함께 사용된다. 함수형 인터페이스는 단 하나의 추상 메서드를 가지며, 이 메서드에 대한 구현이 람다 표현식의 body가 된다.

예제 코드는 다음과 같다.

@FunctionalInterface
interface MyFunction {
    void myMethod();
}

public class LambdaExample {
    public static void main(String[] args) {
        MyFunction func = () -> System.out.println("Hello, Lambda!");
        func.myMethod();
    }
}

위의 코드에서 MyFunction은 함수형 인터페이스로서 단 하나의 메서드인 myMethod를 가지고 있다. 람다 표현식 () -> System.out.println("Hello, Lambda!")은 이 메서드의 구현을 나타낸다.

Java의 람다 표현식은 코드를 간결하고 가독성있게 작성할 수 있도록 도와주며, 함수형 프로그래밍의 장점을 활용하여 유연하고 강력한 코드를 작성할 수 있다.