Java 길찾기/이것이 자바다
[Java] 람다식 기본 문법
Kindbeeeear_
2022. 4. 11. 18:47
함수적 스타일의 람다식을 작성하는 방법은 다음과 같다.
(타입 매개변수, ...) -> {실행문; ... }
(타입 매개변수, ...)는 오른쪽 중괄호 { } 블록을 실행하기 위해 필요한 값을 제공하는 역할을 한다. 매개 변수의 이름은 개발자가 자유롭게 줄 수 있다. '->' 기호는 매개 변수를 이용해서 중괄호 { }를 실행한다는 뜻으로 해석하면 된다. 예를 들어 int 매개 변수 a의 값을 콘솔에 출력하기 위해 다음과 같이 람다식을 작성할 수 있다.
(int a) -> { System.out.println(a); }
매개 변수 타입은 런타임 시에 대입되는 값에 따라 자동으로 인식될 수 있기 때문에 람다식에서는 매개 변수의 타입을 일반적으로 언급하지 않는다. 그래서 위 코드는 다음과 같이 작성할 수 있다.
(a) -> { System.out.println(a); }
하나의 매개 변수만 있다면 괄호 ( )를 생략할 수 있고, 하나의 실행문만 있다면 중괄호 { }도 생략할 수 있다. 그래서 위 코드는 다음과 같이 작성할 수도 있다.
a -> System.out.println(a)
만약 매개 변수가 없다면 람다식에서 매개 변수 자리가 없어지므로 다음과 같이 빈 괄호 ( )를 반드시 사용해야 한다.
() -> { 실행문; ... }
중괄호 { }를 실행하고 결과값을 리턴해야 한다면 다음과 같이 return문으로 결과값을 지정할 수 있다.
(x, y) -> { return x + y; };
중괄호 { }에 return 문만 있을 경우, 람다식에서는 return문을 사용하지 않고 다음과 같이 작성하는 것이 정석이다.
(x, y) -> x + y