‡๐Ÿ‘ฉ‍๐Ÿ’ป ‡/º Java

[Java ์ปฌ๋ ‰์…˜ ํ”„๋ ˆ์ž„์›Œํฌ] HashMap

Trudy | ์†ก์—ฐ 2023. 11. 27. 21:14

์ปฌ๋ ‰์…˜ ํ”„๋ ˆ์ž„์›Œํฌ

https://velog.io/@rara_kim/Java-ArrayList-%EC%82%AC%EC%9A%A9%EB%B2%95

 Map ์ปฌ๋ ‰์…˜

Map ์ปฌ๋ ‰์…˜์€ Key(ํ‚ค)์™€ Value(๊ฐ’) ๋กœ ๊ตฌ์„ฑ๋œ ๊ฐ์ฒด๋ฅผ ์ €์žฅํ•œ๋‹ค. ์ด๋•Œ Key์™€ Value๋Š” ๋ชจ๋‘ ๊ฐ์ฒด์ด๋‹ค.ํ‚ค๋Š” ์œ ์ผํ•ด์•ผํ•˜์ง€๋งŒ, ๊ฐ’์€ ์ค‘๋ณต ์ €์žฅ๋  ์ˆ˜ ์žˆ๋‹ค. ๋งŒ์•ฝ ๊ธฐ์กด์— ์ €์žฅ๋œ ํ‚ค์™€ ๋™์ผํ•œ ํ‚ค๊ฐ’์œผ๋กœ put์„ ํ•˜๊ฒŒ ๋œ๋‹ค๋ฉด, ๋ฎ์–ด์“ฐ๊ธฐ ๋œ๋‹ค. 

  ๋ฉ”์†Œ๋“œ  
๊ฐ์ฒด ์ถ”๊ฐ€ V put(K key, V value) ์ฃผ์–ด์ง„ ๊ฐ์ฒด๋ฅผ ๋งจ ๋์— ์ถ”๊ฐ€
๊ฐ์ฒด ๊ฒ€์ƒ‰ boolean contains(Object o) ์ฃผ์–ด์ง„ ๊ฐ์ฒด๊ฐ€ ์ €์žฅ๋˜์–ด ์žˆ๋Š” ์กฐ์‚ฌ
E get(int index) ์ธ๋ฑ์Šค์— ์ €์žฅ๋œ ๊ฐ์ฒด๋ฅผ return
boolean isEmpty() ์ปฌ๋ ‰์…˜์ด ๋น„์–ด ์žˆ๋Š”์ง€
int size() ์ „์ฒด ๊ฐ์ฒด ์ˆ˜๋ฅผ return 
๊ฐ์ฒด ์‚ญ์ œ void clear() ๋ชจ๋“  Map(ํ‚ค์™€ ๊ฐ์ฒด)์„ ์‚ญ์ œ
V remove(Object Key) Key์™€ ์ผ์น˜ํ•˜๋Š” Map.Entry๋ฅผ ์‚ญ์ œ, return

HashMap ๋ž€?

Map ์ธํ„ฐํŽ˜์ด์Šค์˜ ๋Œ€ํ‘œ์ ์ธ ๊ตฌํ˜„ ํด๋ž˜์Šค์ด๋‹ค. 

HashMap์„ ์„ ์–ธํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. 

Map<ํ‚ค ๋ฐ์ดํ„ฐ ํƒ€์ž…, ๊ฐ’ ๋ฐ์ดํ„ฐ ํƒ€์ž…> hm= new HashMap<>();

Map<String, Integer> hm = new HashMap<>();

 

 

๊ฐ์ฒด ์ถ”๊ฐ€ 

๊ฐ์ฒด ์ถ”๊ฐ€ - put(ํ‚ค, ๊ฐ’)

hm.put("a", 0);
hm.put("b", 10);

 


๊ฐ์ฒด ์‚ญ์ œ

์‚ญ์ œ - remove(ํ‚ค)

์‚ญ์ œ๋ฅผ ์›ํ•˜๋Š” ๊ฐ์ฒด๊ฐ€ ์—ฌ๋Ÿฌ ๊ฐœ์ผ ๋•Œ๋Š”, ๊ฐ€์žฅ ์•ž์— ์žˆ๋Š” ๊ฐ์ฒด 1๊ฐœ๊ฐ€ ์‚ญ์ œ๋œ๋‹ค.

hm.remove("a");

 

์ „์ฒด ์‚ญ์ œ - clear()

hm.clear;

 


๊ฐ์ฒด ๊ฒ€์ƒ‰ 

 

ํ•ด๋‹น ํ‚ค๊ฐ€ ์žˆ๋Š” ์ง€ - containsKey(๊ฐ์ฒด)

boolean b = hm.contiansKey("a");

 

ํ•ด๋‹น ๊ฐ’์ด ์žˆ๋Š” ์ง€ - containsValue(๊ฐ์ฒด)

boolean b = hm.contiansValue("a");

 

์ฃผ์–ด์ง„ ํ‚ค์— ์žˆ๋Š” ๊ฐ’์„ ๋ฆฌํ„ด - get(ํ‚ค)

int a = arraylist.get("a");

 

HashMap์ด ๋น„์–ด ์žˆ๋Š” ์ง€ - isEmpty()

boolean b = arraylist.isEmpty();

 

HashMap์˜ ํฌ๊ธฐ(์ €์žฅ๋œ ํ‚ค๊ฐ’์˜ ๊ฐœ์ˆ˜) - size()

int s = arraylist.size();

 

- 1. HashMap์— ์ €์žฅ๋œ ๋ชจ๋“  Entry(ํ‚ค-๊ฐ’)์„ Set์— ๋‹ด์•„์„œ ๋ฆฌํ„ด - entrySet()

Set<Map.Entry<K,V>> s = hm.entrySet()

 

- 2. HashMap์— ์ €์žฅ๋œ ๋ชจ๋“  ํ‚ค๋ฅผ Set์— ๋‹ด์•„์„œ ๋ฆฌํ„ด -  keySet()

Set<Map.Entry<K,V>> s = hm.entrySet()

 

- 3. HashMap์— ์ €์žฅ๋œ ๋ชจ๋“  ๊ฐ’์„ Set์— ๋‹ด์•„์„œ ๋ฆฌํ„ด - values()

Collection<Integer> s = hm.values()