본문 바로가기
🐎Language/Java

[Java] Lambda

by inbeom 2023. 8. 20.
728x90
반응형

1. 람다 함수(Lambda Function)란?

람다 함수는 함수형 프로그래밍 언어에서 사용되는 개념으로 익명 함수라고도 한다.

Java 8 부터 지원되며, 불필요한 코드를 줄이고 가독성을 향상시키는 것을 목적으로 두고있다.

 

2. 람다 함수의 특징

  • 메소드의 매개변수로 전달될 수 있고, 변수에 저장될 수 있다.즉, 어떤 전달되는 매개변수에 따라서 행위가 결정될 수 있음을 의미한다.
  • 컴파일러 추론에 의지하고 추론이 가능한 코드는 모두 제거해 코드를 간결하게 한다.

 

3. 람다식 표현

  • 파라미터와 몸체로 구분된다.
  • 파라미터와 몸체 사이에 > 구분을 추가하여 람다식을 완성시킨다.
  • 몸체 부분이 단일 행일 경우 중괄호와 return문을 생략할 수 있다.

 

4. 익명함수를 람다식으로 변경하기

기존 방법

new Thread(new Runnable() {
            @Override
            public void run() {
                System.out.println("Thread!");
            }
        }).start();

람다식

new Thread(() -> {
            System.out.println("Thread!");
        }).start();

 

예제

값 a, b를 입력 받아 더하기

(매개변수 목록) -> { 람다식 바디 }
public int sum(int a, int b) {
    return a + b;
}

// 람다식 
(a, b) -> a + b;

값 a, b를 입력 받아 더 큰 수 리턴

public int big(int a, int b) {
	if(a > b) return a;
	else return b;
}

// 람다식 문법
(a, b) -> { return a > b ? a : b }
(a, b) ->  a > b ? a : b
728x90
반응형

'🐎Language > Java' 카테고리의 다른 글

[Java] enum  (0) 2023.08.20
[Java] Stream에 대해 알아보자  (0) 2023.08.20
[Java] Interface  (0) 2023.08.20
[Java] 객체 지향  (0) 2023.08.20
[Java] 자바란?  (0) 2023.08.20