[JAVA] Collections Framework..3

https://ybdeveloper.tistory.com/44

 

[JAVA] Collections Framework..2

Set ์ธํ„ฐํŽ˜์ด์Šค Set ์ธํ„ฐํŽ˜์ด์Šค๋Š” ์ค‘๋ณต์„ ํ—ˆ์šฉํ•˜์ง€ ์•Š๊ณ  ์ €์žฅ์ˆœ์„œ๊ฐ€ ์œ ์ง€๋˜์ง€ ์•Š๋Š” ์ปฌ๋ ‰์…˜ ํด๋ž˜์Šค๋ฅผ ๊ตฌํ˜„ํ•˜๋Š”๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. Set ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ํ•œ ํด๋ž˜์Šค๋กœ๋Š” HashSet, TreeSet ๋“ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค. 1. HashSet Ha..

ybdeveloper.tistory.com

Map ์ธํ„ฐํŽ˜์ด์Šค

https://2018-start.tistory.com/33

Map ์ธํ„ฐํŽ˜์ด์Šค๋Š” key์™€ value๋ฅผ ํ•˜๋‚˜์˜ ์Œ์œผ๋กœ ๋ฌถ์–ด์„œ ์ €์žฅํ•˜๋Š” ์ปฌ๋ ‰์…˜ ํด๋ž˜์Šค๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. key๋Š” ์ค‘๋ณต๋  ์ˆ˜ ์—†์ง€๋งŒ value๋Š” ์ค‘๋ณต์„ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด์— ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ์™€ ์ค‘๋ณต๋œ key์™€ value๋ฅผ ์ €์žฅํ•˜๋ฉด, ๊ธฐ์กด์˜ value๋Š” ์—†์–ด์ง€๊ณ  ๋งˆ์ง€๋ง‰์— ์ €์žฅ๋œ value๊ฐ€ ๋‚จ๊ฒจ์ง€๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. Map ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ํ•œ ํด๋ž˜์Šค๋กœ๋Š” Hashtable, HashMap, LinkedHashMap, SortedMap, TreeMap ๋“ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

 

HashMap๊ณผ Hashtable 

Hashtable๊ณผ HashMap์˜ ๊ด€๊ณ„๋Š” Vector์™€ ArrayList์˜ ๊ด€๊ณ„(๊ตฌ๋ฒ„์ „, ์‹ ๋ฒ„์ „)์™€ ๊ฐ™์•„์„œ ์‹ ๋ฒ„์ „์ธ HashMap์„ ์‚ฌ์šฉํ•  ๊ฒƒ์„ ๊ถŒํ•ฉ๋‹ˆ๋‹ค. HashMap์€ Map์„ ๊ตฌํ˜„ํ–ˆ์œผ๋ฏ€๋กœ ์•ž์—์„œ ์–ธ๊ธ‰ํ•œ Map์˜ ํŠน์ง•, Key์™€ Value๋ฅผ ๋ฌถ์–ด์„œ ํ•˜๋‚˜์˜ ๋ฐ์ดํ„ฐ๋กœ ์ €์žฅํ•œ๋‹ค๋Š” ํŠน์ง•์„ ๊ฐ–์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ํ•ด์‹ฑ์„ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋งŽ์€ ์–‘์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฒ€์ƒ‰ํ•˜๋Š”๋ฐ ์žˆ์–ด์„œ ๋›ฐ์–ด๋‚œ ์„ฑ๋Šฅ์„ ๋ณด์ž…๋‹ˆ๋‹ค. 

TreeMap

TreeMap์€ ์ด๋ฆ„์—์„œ ์•Œ ์ˆ˜ ์žˆ๋“ฏ์ด TreeSet์ฒ˜๋Ÿผ ์ด์ง„๊ฒ€์ƒ‰ํŠธ๋ฆฌ์˜ ํ˜•ํƒœ๋กœ ํ‚ค์™€ ๊ฐ’์˜ ์Œ์œผ๋กœ ์ด๋ฃจ์–ด์ง„ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๊ฒ€์ƒ‰๊ณผ ์ •๋ ฌ์— ๊ต‰์žฅํžˆ ํšจ์œจ์ ์ธ ์ปฌ๋ ‰์…˜ ํด๋ž˜์Šค์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ TreeSet ๋˜ํ•œ ํšจ์œจ์ ์ด๊ธด ํ•˜์ง€๋งŒ ๊ฒ€์ƒ‰์„ฑ๋Šฅ์— ๊ด€ํ•ด์„œ๋Š” HashMap์ด TreeMap๋ณด๋‹ค ๋” ๋›ฐ์–ด๋‚˜๋ฏ€๋กœ ๊ฒ€์ƒ‰ ๊ด€๋ จ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” TreeMap์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ๋‹ค๋งŒ ๋ฒ”์œ„๊ฒ€์ƒ‰์ด๋‚˜ ์ •๋ ฌ์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ์—๋Š” TreeMap์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ํšจ์œจ์ ์ž…๋‹ˆ๋‹ค. TreeMap ๋˜ํ•œ TreeSet๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์ •๋ ฌ์„ ์œ„ํ•ด์„œ Comparator ํ˜น์€ Comparable ๋ฐฉ์‹์œผ๋กœ ๊ตฌํ˜„์„ ์ง์ ‘ ํ•ด์ค˜์•ผ๋งŒ ํ•ฉ๋‹ˆ๋‹ค.

Properties 

Properties๋Š” HashMap์˜ ๊ตฌ๋ฒ„์ „์ธ Hashtable์„ ์ƒ์†๋ฐ›์•„ ๊ตฌํ˜„ํ•œ ๊ฒƒ์œผ๋กœ, Hashtable์€ Key์™€ Value๋ฅผ (Object, Object) ํ˜•ํƒœ๋กœ ์ €์žฅํ•˜๋Š”๋ฐ ๋น„ํ•ด Properties๋Š” (String, String)์˜ ํ˜•ํƒœ๋กœ ์ €์žฅํ•˜๋Š” ๋ณด๋‹ค ๋‹จ์ˆœํ™”๋œ ์ปฌ๋ ‰์…˜ ํด๋ž˜์Šค์ž…๋‹ˆ๋‹ค. ์ฃผ๋กœ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ํ™˜๊ฒฝ์„ค์ •๊ณผ ๊ด€๋ จ๋œ ์†์„ฑ์„ ์ €์žฅํ•˜๋Š”๋ฐ ์‚ฌ์šฉ๋˜๋ฉฐ ๋ฐ์ดํ„ฐ๋ฅผ ํŒŒ์ผ๋กœ๋ถ€ํ„ฐ ์ฝ๊ณ  ์“ฐ๋Š” ํŽธ๋ฆฌํ•œ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.