lambda는 표현식 내에서 사용할 수 있는 최소 함수 정의입니다.
람다는 익명 함수 (Anonymous function)
, 즉 이름을 지정할 필요가 없는 함수에서 주로 사용된다. 또한 일회성
으로 함수를 사용할 때 쓰인다.
(lambda x, y: x + y)(1, 2)
>> 3 # 1 + 2
lambda 매개변수 : 표현식
() -> "Hello World!";
(매개변수, ... ) -> { 실행문 ... }
두 인자의 function을 왼쪽에서 오른쪽으로 iterable의 항목에 누적적으로 적용해서, 이터러블을 단일 값으로 줄입니다.
주로 위 lamda와 같이 쓰인다.
from functools import reduce
reduce(lambda x, y: x + y, [1, 2, 3, 4, 5])
>> 15 # ((((1+2)+3)+4)+5)
reduce(집계 함수, 순회 가능한 데이터[, 초기값])
void tempTest() {
List<Integer> list = List.of(1, 2, 3, 4, 5);
System.out.println(list.stream().reduce((x, y) -> x + y)
.orElseThrow(IllegalArgumentException::new));
}
>> 15
list.stream().reduce(함수)
출처: https://mangkyu.tistory.com/113 [MangKyu's Diary:티스토리]