IT/CS

[Java] Lambda expression

Terriermon 2021. 9. 28. 09:41

Lambda expression

익명함수, 메서드를 하나의 식(expression)으로 표현한 것

- 자바8(JDK1.8) 버전부터 도입

- 함수형 언어

 

 

람다식 작성

- 메서드에서 이름과 반환타입 제거

- 매개변수 선언부와 몸통{} 사이에 -> 추가

// 기존 함수
int max(int a, int b){
	return a > b ? a : b;
}


// 람다식
(int a, int b) -> { return a > b ? a : b; } //return 형이 존재한다면 {}를 뺄 수 없음
(a, b) -> a > b ? a : b;


// 기존 함수
int sum(int[] arr){
    int sum = 0;
    for(int i : arr)
        sum += i;
    return sum;
}


// 람다식
(int[] arr) -> {
    int sum = 0;
    for(int i : arr)
        sum += i;
    return sum;
}

 

반응형