๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Web Application

Java ๋ชจ๋ฅด๋Š” ๋‚ด์šฉ

by ํ–‰๋ฑ 2021. 9. 12.

long ↔ Long

- long: 8 byte Java ๊ธฐ๋ณธ ์ž๋ฃŒํ˜•

- Long: long์˜ wapper class

https://jusungpark.tistory.com/17

 

Optional<T>

T๊ฐ’์ด null ์ผ ์ˆ˜ ์žˆ์„ ๋•Œ Optional๋กœ ๊ฐ์‹ธ์„œ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์„ ํ˜ธ (Java 8๋ถ€ํ„ฐ ์ง€์›)

http://tcpschool.com/java/java_stream_optional

 

Map ↔ HashMap

- Map: key-value๋ฅผ ์ €์žฅํ•˜๊ธฐ ์œ„ํ•œ ์ธํ„ฐํŽ˜์ด์Šค

- HashMap: Map์˜ ๊ตฌํ˜„์ฒด๋กœ, ๋‹ค๋ฅธ Map์˜ ๊ตฌํ˜„์ฒด๋กœ๋Š” TreeHashMap/LinkedHashMap์ด ์žˆ์Œ

https://www.delftstack.com/ko/howto/java/difference-between-hashmap-and-map-in-java/

 

List ↔ ArrayList

- Map ↔ HashMap์˜ ๊ด€๊ณ„์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ List๋Š” ์ธํ„ฐํŽ˜์ด์Šค, ArrayList๋Š” List์˜ ๊ตฌํ˜„์ฒด

- List์˜ ๊ตฌํ˜„์ฒด๋กœ๋Š” ArrayList, LinkedList, Vector๊ฐ€ ์žˆ์Œ

https://velog.io/@adam2/Array%EC%99%80-List%EA%B7%B8%EB%A6%AC%EA%B3%A0-Java-List

 

Stream

์ž๋ฐ” 8์—์„œ ์ถ”๊ฐ€ํ•œ ์ŠคํŠธ๋ฆผ(Streams)์€ ๋žŒ๋‹ค๋ฅผ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ์ˆ  ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. ์ž๋ฐ” 8 ์ด์ „์—๋Š” ๋ฐฐ์—ด ๋˜๋Š” ์ปฌ๋ ‰์…˜ ์ธ์Šคํ„ด์Šค๋ฅผ ๋‹ค๋ฃจ๋Š” ๋ฐฉ๋ฒ•์€ for ๋˜๋Š” foreach ๋ฌธ์„ ๋Œ๋ฉด์„œ ์š”์†Œ ํ•˜๋‚˜์”ฉ์„ ๊บผ๋‚ด์„œ ๋‹ค๋ฃจ๋Š” ๋ฐฉ๋ฒ•์ด์—ˆ์Šต๋‹ˆ๋‹ค. ๊ฐ„๋‹จํ•œ ๊ฒฝ์šฐ๋ผ๋ฉด ์ƒ๊ด€์—†์ง€๋งŒ ๋กœ์ง์ด ๋ณต์žกํ•ด์งˆ์ˆ˜๋ก ์ฝ”๋“œ์˜ ์–‘์ด ๋งŽ์•„์ ธ ์—ฌ๋Ÿฌ ๋กœ์ง์ด ์„ž์ด๊ฒŒ ๋˜๊ณ , ๋ฉ”์†Œ๋“œ๋ฅผ ๋‚˜๋ˆŒ ๊ฒฝ์šฐ ๋ฃจํ”„๋ฅผ ์—ฌ๋Ÿฌ ๋ฒˆ ๋„๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
์ŠคํŠธ๋ฆผ์€ '๋ฐ์ดํ„ฐ์˜ ํ๋ฆ„’์ž…๋‹ˆ๋‹ค. ๋ฐฐ์—ด ๋˜๋Š” ์ปฌ๋ ‰์…˜ ์ธ์Šคํ„ด์Šค์— ํ•จ์ˆ˜ ์—ฌ๋Ÿฌ ๊ฐœ๋ฅผ ์กฐํ•ฉํ•ด์„œ ์›ํ•˜๋Š” ๊ฒฐ๊ณผ๋ฅผ ํ•„ํ„ฐ๋งํ•˜๊ณ  ๊ฐ€๊ณต๋œ ๊ฒฐ๊ณผ๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ๋žŒ๋‹ค๋ฅผ ์ด์šฉํ•ด์„œ ์ฝ”๋“œ์˜ ์–‘์„ ์ค„์ด๊ณ  ๊ฐ„๊ฒฐํ•˜๊ฒŒ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฆ‰, ๋ฐฐ์—ด๊ณผ ์ปฌ๋ ‰์…˜์„ ํ•จ์ˆ˜ํ˜•์œผ๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

https://futurecreator.github.io/2018/08/26/java-8-streams/ (stream ๊ฐœ๋…, filter)

http://tcpschool.com/java/java_stream_concept ~ http://tcpschool.com/java/java_stream_terminal (findAny)

๋Œ“๊ธ€