Banner

My Tech Blog (map)

์ „๋ถ€ํ„ฐ ํฌ์ŠคํŒ… ํ•ด์•ผ ๊ฒ ๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ๋Š”๋ฐ ๋ฏธ๋ฃจ๋‹ค๊ฐ€ ํ•˜๋Š” ํฌ์ŠคํŒ… ์ž๋ฃŒ์กฐ์‚ฌ ํ•˜๋ ค๋ฉด ๋„ˆ๋ฌด ์˜ค๋ž˜๊ฑธ๋ ค์„œ ๋‹ค์Œ์— ํ•˜๋ ค๋‹ค๊ฐ€ ์ง€๊ธˆ ์งฌ๋‚ด์„œ ํ›„๋”ฑ ํ•ด ๋ฒ„๋ฆฌ์ž  1. Map๊ณผ Set Map๊ณผ Set์€ ์ž๋ฐ”์—์„œ ์ปฌ๋ ‰์…˜ ํ”„๋ ˆ์ž„์›Œํฌ(Collection Framework)์— ์†ํ•˜๋Š” ์ž๋ฃŒ๊ตฌ์กฐ์ด๋‹ค. ๋‘˜ ๋‹ค java.utilํŒจํ‚ค์ง€์— ํฌํ•จ๋˜์–ด ์žˆ๋‹ค. ๊ธฐ๋ณธ ์ž๋ฃŒํ˜•์€ ์•„๋‹ˆ๊ณ  ๊ฐ์ฒด๋กœ ๋‹ค๋ฃจ์–ด์ง€๋Š” ์ž๋ฃŒ๊ตฌ์กฐ์ธ๋ฐ, Map์€ key-value ํ˜•ํƒœ๋กœ ๋น ๋ฅธ ๊ฒ€์ƒ‰์ด ํ•„์š”ํ•œ ๋Œ€๋Ÿ‰์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค๋ฃฐ ๋•Œ ์œ ์šฉํ•˜๊ณ , Set์€ ์ค‘๋ณต ์—†๋Š” ๋ฐ์ดํ„ฐ ์ง‘ํ•ฉ์ด ํ•„์š”ํ•  ๋•Œ ์‚ฌ์šฉ๋œ๋‹ค.   2. Map ์ด๋ž€? ์‚ฌ๋žŒ์„ ‘์ด๋ฆ„ = ์ตœ๋‹ค์ธ’, 'ํ‚ค = 165' ๋“ฑ์œผ๋กœ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์žˆ๋“ฏ์ด ๋งต(Map) ์€ ๋Œ€์‘ ๊ด€๊ณ„๋ฅผ ์‰ฝ๊ฒŒ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ์ž๋ฃŒํ˜•์ด๋‹ค. ๋งต์˜ ๊ตฌํ˜„์ฒด ์ค‘์— ๊ฐ€์žฅ ์œ ๋ช…ํ•œ ๊ฑด ..
์‹ค๋ฌด์—์„œ Map์€ ์–ด๋””์— ์“ฐ์ผ๊นŒ?์šฐ๋ฆฌ๊ฐ€ ์•„๋Š” ์ž๋ฐ”์˜ ๋งต(Map)์€ ํ‚ค-๊ฐ’ ์Œ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•œ๋‹ค.์‚ฌ๋žŒ์„ ‘์ด๋ฆ„ = ํ™๊ธธ๋™’, ‘์ƒ์ผ = ๋ช‡ ์›” ๋ฉฐ์น ’ ๋“ฑ์œผ๋กœ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์žˆ๋“ฏ์ด๋งต(Map) ์€ ๋Œ€์‘ ๊ด€๊ณ„๋ฅผ ์‰ฝ๊ฒŒ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ์ž๋ฃŒํ˜•์ด๋‹ค. ๋งต์€ ๋‹ค๋ฅธ ์–ธ์–ด์—๋„ ์žˆ๋Š” ์ž๋ฃŒํ˜•์œผ๋กœ, associative array ๋˜๋Š” hash๋ผ๊ณ ๋„ ๋ถˆ๋ฆฐ๋‹ค. ๋งต์€ ๋ฆฌ์ŠคํŠธ๋‚˜ ๋ฐฐ์—ด์ฒ˜๋Ÿผ ์ˆœ์ฐจ์ ์œผ๋กœ(sequential) ์š”์†Ÿ๊ฐ’์„ ๊ตฌํ•˜์ง€ ์•Š๊ณ , ํ‚ค(key)๋ฅผ ์ด์šฉํ•ด ๊ฐ’(value)์„ ์–ป๋Š”๋‹ค. ์šฐ๋ฆฌ๊ฐ€ baseball์ด๋ž€ ๋‹จ์–ด์˜ ๋œป์„ ์ฐพ์„ ๋•Œ ์‚ฌ์ „์˜ 1์ชฝ๋ถ€ํ„ฐ ๋ชจ๋‘ ์ฝ์ง€ ์•Š๊ณ  baseball์ด๋ผ๋Š” ๋‹จ์–ด๊ฐ€ ์žˆ๋Š” ๊ณณ์„ ์ฐพ์•„ ํ™•์ธํ•˜๋Š” ๊ฒƒ๊ณผ ๊ฐ™๋‹ค. ๊ทธ๋ž˜์„œ Map์„ ํ™œ์šฉํ•˜๋ฉด ๋Œ€๋Ÿ‰์˜ ๋ฐ์ดํ„ฐ์—์„œ๊ฒ€์ƒ‰ ์†๋„๊ฐ€ ๋น ๋ฅด๊ณ  ์ค‘๋ณต๊ฐ’ ๊ด€๋ฆฌ๊ฐ€ ์‰ฝ๋‹ค. ๋งต ์ž๋ฃŒํ˜•์—๋Š”..
โœ… List๋ฅผ map์œผ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ์ด์œ  db๋‚˜ API์—์„œ ๋ฐ์ดํ„ฐ ๋ฐ›์•„์™€์„œ ๊ฒ€์ƒ‰ํ•  ๋•Œ ์†๋„๋‚˜ ํšจ์œจ์„ฑ ์ธก๋ฉด์—์„œ map์ด ๋น ๋ฆ„์ฆ‰, ๋Œ€๊ทœ๋ชจ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ๋‚˜, ๋น ๋ฅธ ๊ฒ€์ƒ‰์„ ์œ„ํ•ด์„œ ํ•„์š”ํ•จ.์ด๊ฒƒ์ด ๊ฐ€๋Šฅํ•œ ์ด์œ ๋Š” map์€ ํ•ด์‹œ ๊ธฐ๋ฐ˜์œผ๋กœ ์ž‘๋™ํ•˜๋ฉฐ ํ‚ค,๊ฐ’ ์Œ ํ˜•์‹์„ ๊ฐ€์ง€๊ธฐ ๋•Œ๋ฌธ.  JSON์ด๋ž‘ ๋น„์Šทํ•œ ํ˜•์‹์ด์ง€๋งŒ ์ž๋ฐ”์˜ map์€ ํ‚ค๊ฐ’ ํƒ€์ž…์„ ์ œ๋„ค๋ฆญ์œผ๋กœ ์ง€์ •ํ•ด ์ฃผ์–ด์•ผ ํ•˜๊ณ Map์ฒ˜๋Ÿผ ๋ช…ํ™•ํ•œ ํƒ€์ž…์„ ์ง€์ •ํ•ด ์ฃผ์–ด์•ผ ํ•จ. [JSON]{ "name": "Alice", "age": 30, "isEmployee": true} [JAVA map]Map person = new HashMap();person.put("name", "Alice");person.put("age", 30);person.put("isEmployee", ..
โœ… ๋ฌธ์ œ & ์ œ์•ฝ์กฐ๊ฑด โœ… ์ž…์ถœ๋ ฅ ์˜ˆ   โœ… ํ’€์ด ๊ณผ์ •์ผ๋‹จ ๋‘ ๊ฐœ์˜ ๋ฐฐ์—ด id_pw, db์— for ๋ฌธ์„ ๋Œ๋ ค์„œ ๊ฐ’์„ ๊ฐ€์ ธ์˜ค๋Š” ๋ฐฉ๋ฒ•์„ ์ƒ๊ฐ ํ•ด ๋ดค๋‹ค. id_pw๋Š” 1์ฐจ์› ๋ฐฐ์—ด, db๋Š” 2์ฐจ์› ๋ฐฐ์—ด์ด๋ผ์„œ id_pw์˜ 0๋ฒˆ ์ธ๋ฑ์Šค๊ฐ€ ๋กœ๊ทธ์ธ ์‹œ๋„ํ•œ ์‚ฌ์šฉ์ž์˜ id๊ฐ’์ด ๋˜๊ณ  1๋ฒˆ ์ธ๋ฑ์Šค๊ฐ€ ํŒจ์Šค์›Œ๋“œ์ด๋‹ค. ๋ฐ˜๋ฉด db๋Š” 2์ฐจ์› ๋ฐฐ์—ด์ด๊ธฐ ๋•Œ๋ฌธ์— [ ] [ ] ํ˜•์‹์œผ๋กœ ์ ‘๊ทผ์„ ํ•ด ์ค˜์•ผ ํ•œ๋‹ค. [i][0] ์ด ์•„์ด๋””๊ฐ’์ด๊ณ  [i][1]์ด ํŒจ์Šค์›Œ๋“œ ๊ฐ’์ด๋‹ค. case 1 : id_pw์˜ ์•„์ด๋””๊ฐ’์ด db[i][0]๊ณผ ๊ฐ™๊ณ  id_pw์˜ ํŒจ์Šค์›Œ๋“œ ๊ฐ’์ด db[i][1] ์ด๋ž‘ ๊ฐ™์œผ๋ฉด  answer์— "login" ๊ฐ’ ๋„ฃ๊ธฐcase2 : id_pw์˜ ์•„์ด๋””๊ฐ’์ด db[i][0]๊ณผ ๊ฐ™์œผ๋‚˜ id_pw์˜ ํŒจ์Šค์›Œ๋“œ ๊ฐ’์ด db[i][1] ์ด๋ž‘ ๊ฐ™์ง€ ์•Š์œผ..
์ธ์ ˆ๋ฏธ์˜€๋˜๊ฒƒ
'map' ํƒœ๊ทธ์˜ ๊ธ€ ๋ชฉ๋ก
์ƒ๋‹จ์œผ๋กœ