[Java] ๋งต(Map)
โป ํด๋น ๊ฒ์๊ธ์ ์ ํ ํฌ ์๋ฐ๋ฅผ ์ฐธ๊ณ ํ์ฌ ์์ฑํ์์ต๋๋ค.
"์ฌ๋"์ ์๋ก ๋ค๋ฉด ๋๊ตฌ๋ ์ง "์ด๋ฆ" = "ํ๊ธธ๋", "์์ผ" = "๋ช ์ ๋ฉฐ์น " ๋ฑ์ผ๋ก ๊ตฌ๋ถํ ์ ์๋ค.
์๋ฐ์ ๋งต(Map)์ ์ด๋ฌํ ๋์ ๊ด๊ณ๋ฅผ ์ฝ๊ฒ ํํํ ์ ์๊ฒ ํด์ฃผ๋ ์๋ฃํ์ด๋ค.
๋งต(Map)์ ์ฌ์ (dictionary)๊ณผ ๋น์ทํ๋ค. ์ฆ, people ์ด๋ ๋จ์ด์ "์ฌ๋", baseball ์ด๋ผ๋ ๋จ์ด์ "์ผ๊ตฌ"๋ผ๋ ๋ป์ด ๋ถํฉ๋๋ฏ์ด Map์ Key์ Value๋ฅผ ํ ์์ผ๋ก ๊ฐ๋ ์๋ฃํ์ด๋ค.
* Map ํฐ ํน์ง์ ๋ฆฌ์คํธ๋ ๋ฐฐ์ด์ฒ๋ผ ์์ฐจ์ (์ธ๋ฑ์ค)์ผ๋ก ํด๋น ๊ฐ์ ๊ตฌํ์ง ์๊ณ key๋ฅผ ํตํด value๋ฅผ ์ป์.
1. HashMap
1) put
key์ value๊ฐ String ํํ์ธ HashMap์ ๋ง๋ค๊ณ ์์์ ๋ณด์๋ ์์ ์ ํญ๋ชฉ๊ฐ๋ค์ ์ ๋ ฅํด ๋ณด์.
import java.util.HashMap;
public class Sample {
public static void main(String[] args) {
HashMap<String, String> map = new Hashmap<>();
map.put("people","์ฌ๋");
map.put("baseball","์ผ๊ตฌ");
}
}
* HashMap์ ์ ๋ค๋ฆญ์ค๋ Key, Value ๋ชจ๋ String ํ์ ์ด๋ค. ๋ฐ๋ผ์ Key, Value์ String ์ด์ธ์ ์๋ฃํ์ ์ฌ์ฉํ ์ ์๋ค.
2) get
key์ ํด๋นํ๋ value๊ฐ์ ์ป๊ธฐ ์ํด์๋ get ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ค.
System.out.println(map.get("people")); // "์ฌ๋" ์ถ๋ ฅ
3) constrainsKey
๋งต(Map)์ ํด๋นํ๋ ํค(Key)๊ฐ ์๋์ง๋ฅผ ์กฐ์ฌํ์ฌ ๊ทธ ์ ๋ฌด๋ฅผ ์ฐธ,๊ฑฐ์ง์ผ๋ก ๋ฆฌํด
System.out.println(map.containsKey("people")); // true ์ถ๋ ฅ
4) remove
remove ๋ฉ์๋๋ ๋งต(Map)์ ํญ๋ชฉ์ ์ญ์ ํ๋ ๋ฉ์๋๋ก key๊ฐ์ ํด๋น๋๋ ์์ดํ (key, value)์ ์ญ์ ํ ํ ๊ทธ value ๊ฐ์ ๋ฆฌํดํ๋ค.
System.out.println(map.remove("people")); // "์ฌ๋" ์ถ๋ ฅ
5) size
size ๋ฉ์๋๋ Map์ ๊ฐฏ์๋ฅผ ๋ฆฌํดํ๋ค.
System.out.println(map.size()); //1
6) keySet
keySet์ ๋งต(Map)์ ๋ชจ๋ Key๋ฅผ ๋ชจ์์ ๋ฆฌํดํ๋ค.
import java.util.HashMap;
public class Sample {
public static void main(String[] args) {
HashMap<String, String> map = new HashMap<>();
map.put("people", "์ฌ๋");
map.put("baseball", "์ผ๊ตฌ");
System.out.println(map.keySet()); // [baseball, people] ์ถ๋ ฅ
}
}