6개월 대장정/JAVA 개념

29일차 - 람다식(1)

pitang 2021. 9. 27. 17:54
반응형

안녕하세요. pitang입니다.

람다식을 알아보도록 하겠습니다.

 

람다식

람다식은 익명 함수를 생성하기 위한 식으로 객체 지향 언어보다는 함수 지향 언어에 가깝다.

 

람다식은 (매개변수) -> {실행코드} 형태로 작성되는데, 

함수 정의 형태를 띄고 있지만 런타임 시에 인터페이스의 익명 구현 객체로 생성된다.

 

람다식 기본 문법

람다식의 작성방법은

(타입 매개변수, ...) -> {실행문; ...} 

이다.

-> 기호는 매개 변수를 이용해서 중괄호 {}를 실행한다는 뜻으로 해석하면 된다.

 

하나의 매개 변수만 있다면 괄호()를 생략할 수 있고, 하나의 실행문만 있다면 중괄호 {}도 생략할 수 있다.

(a) 가 아닌 a라 쓸 수 있고, { System.out.println(a); } 이 아닌 System.out.println(a) 라고 쓸 수 있다는 뜻이다.

 

만약 매개 변수가 없다면 람다식에서 매개 변수 자리가 없어지므로 빈 괄호()를 반드시 사용해야 한다.

() -> { 실행문; ... }

 

중괄호{}를 실행하고 결과값을 리턴해야 한다면 다음과 같이 return문으로 결과값을 지정할 수 있다.

(x, y) -> {return x+y; };

 

중괄호{}에 return문만 있을 경우, 람다식에서는 return문을 사용하지 않고 작성한다.

(x, y) -> x+y

 

위의 것들은 천천히 하나하나 알아볼 것이다.

 

ex1) 

람다식을 사용하지 않았을 경우

ExAnonymous

 

ex2)

람다식을 사용하지 않은경우와 사용한 경우, 간단해지는 걸 확인할 수 있다.

Ex02Anonymous
console

 

ex3)

하나의 실행문만 있다면 중괄호 {}도 생략 가능하다.

Ex03OneStatement - console

 

ex4)

중괄호 {}에 return문만 있을 경우, 람다식에서는 return문도 생략 가능하다.

Ex04Return - console

 

ex5)

매개변수와 리턴값이 없는 람다식 

Ex06ZeroParameter
console

 

ex6)

매개변수가 있고 리턴값이 없는 경우 

Ex07OneParameter - console

 

ex7)

매개변수가 두개가 있고 리턴값이 없는 경우

Ex09TwoParameter
console

 

ex8)

Ex05Lotto
console

 

감사합니다.

 

*m1 맥북을 사용 중입니다.*

 

 

 

 

728x90
반응형