람다 표현식(Lambda Expression)

JH·2024년 2월 15일

java

목록 보기
12/21

람다 표현식은 자바 8부터 등장한 기능으로, 메소드를 하나의 식으로 간결하게 표현하는 것을 말한다. 이는 익명 함수로서, 함수형 프로그래밍의 기본적인 개념 중 하나이다.

기존의 메소드 정의 방식은 다음과 같다.

반환타입 메소드이름(매개변수, ...) {
    실행문
}

public int sum(int x, int y) {
    return x + y;
}

하지만 람다 표현식을 이용하면 아래와 같이 간결하게 표현할 수 있다.

(매개변수, ...) -> {실행문 ...}
(int x, int y) -> {return x + y;}

람다식 장점

  • 코드의 간결성: 불필요한 모호한 코드를 줄여 가독성을 높임
  • 가독성 향상: 메소드를 호출하는 부분과 메소드 구현부를 한 눈에 파악할 수 있음
  • 생산성 향상: 간단한 연산을 간결하게 처리하여 개발 시간 단축

람다식 단점

  • 재사용의 어려움: 람다식은 익명 함수이기 때문에 재사용이 어려울 수 있음
  • 디버깅 어려움: 람다식을 사용하면 스택 트레이스에 나타나는 메소드 이름이 익명으로 표시되어 디버깅이 어려울 수 있음
  • 재귀함수로는 사용 불가: 람다식은 단일 식으로 표현되므로 재귀 호출에 적합하지 않을 수 있음

이를 통해 람다 표현식의 개념과 장단점을 이해하고, 무조건 간결하게 사용한다고 람다식을 이용하기 보단 적절한 상황에서 활용할 수 있어야 한다.

아래는 람다 표현식을 사용한 간단한 예시 코드이다.

// 람다 표현식을 이용한 덧셈 연산
interface MathOperation {
    int operation(int a, int b);
}

public class Main {
    public static void main(String[] args) {
        MathOperation addition = (int x, int y) -> x + y;
        System.out.println("10 + 5 = " + addition.operation(10, 5));
    }
}
profile
발전하는 백엔드 개발자

0개의 댓글