Java

[Effective Java] ์•„์ดํ…œ 43. ๋žŒ๋‹ค๋ณด๋‹ค๋Š” ๋ฉ”์„œ๋“œ ์ฐธ์กฐ๋ฅผ ์‚ฌ์šฉํ•˜๋ผ.

quedevel 2023. 3. 22. 11:37
728x90
๋ฐ˜์‘ํ˜•

๐ŸŽฏ ์•„์ดํ…œ 43. ๋žŒ๋‹ค๋ณด๋‹ค๋Š” ๋ฉ”์„œ๋“œ ์ฐธ์กฐ๋ฅผ ์‚ฌ์šฉํ•˜๋ผ.

๋žŒ๋‹ค๊ฐ€ ์ต๋ช… ํด๋ž˜์Šค๋ณด๋‹ค ๋‚˜์€ ์  ์ค‘์—์„œ ๊ฐ€์žฅ ํฐ ํŠน์ง•์€ ๊ฐ„๊ฒฐํ•จ์ด๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ์ž๋ฐ”์—๋Š” ํ•จ์ˆ˜ ๊ฐ์ฒด๋ฅผ ์‹ฌ์ง€์–ด ๋žŒ๋‹ค๋ณด๋‹ค๋„

๋” ๊ฐ„๊ฒฐํ•˜๊ฒŒ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ์œผ๋‹ˆ, ๋ฐ”๋กœ ๋ฉ”์„œ๋“œ ์ฐธ์กฐ๋‹ค. ํ•˜์ง€๋งŒ, ๋ฉ”์„œ๋“œ ์ฐธ์กฐ ์ชฝ์ด ์งง๊ณ  ๋ช…ํ™•ํ•˜๋‹ค๋ฉด ๋ฉ”์„œ๋“œ ์ฐธ์กฐ๋ฅผ ์“ฐ๊ณ ,

๊ทธ๋ ‡์ง€ ์•Š์„ ๋•Œ๋งŒ ๋žŒ๋‹ค๋ฅผ ์‚ฌ์šฉํ•˜๋ผ.


  • ๋ฉ”์„œ๋“œ ์ฐธ์กฐ๋ฅผ ์‚ฌ์šฉํ–ˆ์„๋•Œ ๋” ์งง๊ณ  ๋ช…ํ™•ํ•œ ์†Œ์Šค
    List<Long> sortedOrders = orders.stream()
          .sorted(comparing(Order::getCreatedAt))
          .map(Order::getId)
          .collect(Collectors.toList());
    ์ข€ ๋” ์งง๊ณ  ๋ช…ํ™•ํ•œ ์†Œ์Šค๊ฐ€ ๋˜์—ˆ๋‹ค. ํ•˜์ง€๋งŒ, ํด๋ž˜์Šค๋ช…์ด ๋„ˆ๋ฌด ๊ธธ๊ฑฐ๋‚˜ ๋” ๋ช…ํ™•ํ•˜๋‹ค๊ณ  ํŒ๋‹จ๋˜์ง€ ์•Š๋Š”๋‹ค๋ฉด ๋žŒ๋‹ค๋ฅผ ์‚ฌ์šฉํ•˜์ž.

์ฐธ๊ณ  ์ž๋ฃŒ

Joshua Bloch, ใ€ŽEffective Java 3/Eใ€, ๊ฐœ์•ž๋งต์‹œ ์˜ฎ๊น€, ํ”„๋กœ๊ทธ๋ž˜๋ฐ์ธ์‚ฌ์ดํŠธ(2018)
http://www.kyobobook.co.kr/product/detailViewKor.laf?ejkGb=KOR&mallGb=KOR&barcode=9788966262281&orderClick=LEa&Kc=

728x90
๋ฐ˜์‘ํ˜•