Banner

My Tech Blog (map)

์˜ค๋Š˜์˜ ๋ช…์–ธ
" ๋งค์ผ์„ ์ธ์ƒ์˜ ๋งˆ์ง€๋ง‰ ๋‚ ์ฒ˜๋Ÿผ ์‚ฐ๋‹ค๋ฉด ์–ธ์  ๊ฐ€๋Š” ์˜์ธ์ด ๋˜์–ด์žˆ์„ ๊ฒƒ์ด๋‹ค. "
- ์Šคํ‹ฐ๋ธŒ ์žก์Šค (์• ํ”Œ ์ฐฝ์—…์ž)
27๋ฒˆ_ ํ•จ์ˆ˜ ํ˜ธ์ถœ ์‹œ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ๋ฆฌ์ŠคํŠธ๋ฅผ ๋ฐ›๋Š” ๋ฌธ์ œโœ… ์ •๋‹ต: [1, 2] ๐Ÿ’ก y=[]๋Š” ํ•จ์ˆ˜ ํ˜ธ์ถœ ์‹œ ๋งค๋ฒˆ ์ƒˆ๋กœ์šด ๋ฆฌ์ŠคํŠธ๋ฅผ ์ƒ์„ฑํ•˜์ง€ ์•Š๊ณ , ๊ธฐ์กด ๋ฆฌ์ŠคํŠธ๋ฅผ ๊ณต์œ ํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ์˜ˆ์ƒ๊ณผ ๋‹ค๋ฅด๊ฒŒ ๊ฐ’์ด ๊ณ„์† ์ถ”๊ฐ€๋œ๋‹ค. ์ฆ‰, ๋ฆฌ์ŠคํŠธ๋ฅผ ๊ธฐ๋ณธ ์ธ์ž๋กœ ์‚ฌ์šฉํ•˜๋ฉด ์ด์ „ ํ˜ธ์ถœ์˜ ๊ฐ’์ด ๋ˆ„์ ๋œ๋‹ค.  28๋ฒˆ_ ๋ฌธ์ž์—ด ๋ฆฌ์ŠคํŠธ ์ˆœํšŒ๋‹ค์Œ ํ•จ์ˆ˜์˜ ์‹คํ–‰ ๊ฒฐ๊ณผ๋Š”?class Arr: a = ['Seoul', 'Kyeonggi', 'Inchon', 'Daejoen', 'Daegu', 'Busan'] s = '' # ๋ฌธ์ž์—ด ์ดˆ๊ธฐํ™” for i in Arr.a: # ์˜ฌ๋ฐ”๋ฅธ for๋ฌธ ๋ฌธ๋ฒ• s += i[0] # ๊ฐ ๋‹จ์–ด์˜ ์ฒซ ๊ธ€์ž๋งŒ ์ถ”๊ฐ€ print(s)โœ… ์ •๋‹ต: SKIDDB (๊ฐ ๋„์‹œ ์ด๋ฆ„์˜ ์ฒซ ๊ธ€์ž๋ฅผ ์กฐํ•ฉํ•œ ๊ฒฐ๊ณผ)๐Ÿ’ก A..
์ „๋ถ€ํ„ฐ ํฌ์ŠคํŒ… ํ•ด์•ผ ๊ฒ ๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ๋Š”๋ฐ ๋ฏธ๋ฃจ๋‹ค๊ฐ€ ํ•˜๋Š” ํฌ์ŠคํŒ… ์ž๋ฃŒ์กฐ์‚ฌ ํ•˜๋ ค๋ฉด ๋„ˆ๋ฌด ์˜ค๋ž˜๊ฑธ๋ ค์„œ ๋‹ค์Œ์— ํ•˜๋ ค๋‹ค๊ฐ€ ์ง€๊ธˆ ์งฌ๋‚ด์„œ ํ›„๋”ฑ ํ•ด ๋ฒ„๋ฆฌ์ž  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] ์ด๋ž‘ ๊ฐ™์ง€ ์•Š์œผ..
์ƒ๋‹จ์œผ๋กœ