[Java] ๋žŒ๋‹ค์‹(Lambda Expression)
ยท
Backend/Java
* ๋ณธ ๋‚ด์šฉ์€ ์„ ์ฐธ๊ณ ํ•˜์—ฌ ์ž‘์„ฑํ•˜์˜€์Šต๋‹ˆ๋‹ค. โ— ๋žŒ๋‹ค์‹(Lambda Expression)์€ ๋ฉ”์„œ๋“œ๋ฅผ ํ•˜๋‚˜์˜ '์‹(expression)'์œผ๋กœ ํ‘œํ˜„ํ•œ ๊ฒƒ์ด๋‹ค. ๋žŒ๋‹ค์‹์€ ํ•จ์ˆ˜๋ฅผ ๊ฐ„๋žตํ•˜๋ฉด์„œ๋„ ๋ช…ํ™•ํ•˜๊ฒŒ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค€๋‹ค. ๋ฉ”์„œ๋“œ๋ฅผ ๋žŒ๋‹ค์‹์œผ๋กœ ํ‘œํ˜„ํ•˜๋ฉด ๋ฉ”์„œ๋“œ์˜ ์ด๋ฆ„๊ณผ ๋ฐ˜ํ™˜๊ฐ’์ด ์—†์–ด์ง€๋ฏ€๋กœ, ๋žŒ๋‹ค์‹์„ '์ต๋ช… ํ•จ์ˆ˜(anonymous function)'๋ผ๊ณ ๋„ ํ•œ๋‹ค. ์ฆ‰, ๋žŒ๋‹ค์‹์œผ๋กœ ์ธํ•ด ๋ฉ”์„œ๋“œ๋ฅผ ๋ณ€์ˆ˜์ฒ˜๋Ÿผ ๋‹ค๋ฃจ๋Š” ๊ฒƒ์ด ๊ฐ€๋Šฅํ•ด์ง„ ๊ฒƒ์ด๋‹ค. โ— ๋žŒ๋‹ค์‹ ์ž‘์„ฑํ•˜๊ธฐ int max(int a, int b) { return a > b ? a : b; } ๋ฉ”์„œ๋“œ์—์„œ ์ด๋ฆ„๊ณผ ๋ฐ˜ํ™˜ํƒ€์ž…์„ ์ œ๊ฑฐํ•˜๊ณ  ๋งค๊ฐœ๋ณ€์ˆ˜ ์„ ์–ธ๋ถ€์™€ ๋ชธํ†ต{} ์‚ฌ์ด์— '->'๋ฅผ ์ถ”๊ฐ€ํ•˜๊ธฐ๋งŒ ํ•˜๋ฉด ๋œ๋‹ค. (int a, int b) -> { return a > b ? a : b; }..
_์„ฑํ˜ธ_
'๋žŒ๋‹ค์‹' ํƒœ๊ทธ์˜ ๊ธ€ ๋ชฉ๋ก