๐ HashMap
HashMap์ ํค-๊ฐ ์์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ฏ๋ก, ๋ค์ํ ์ฉ๋๋ก ํ์ฉํ ์ ์๋ค.
Value์ ์ค๋ณต๊ฐ์ ํ์ฉํ๋ Key๊ฐ์ด ์ค๋ณต๋ ์๋ ์๋ค.
1. ๋ฐ์ดํฐ ์ ์ฅ ๋ฐ ๊ฒ์
- ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ๋๋ put(key, value) ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ค.
- ํน์ ํค์ ํด๋นํ๋ ๊ฐ์ ๊ฒ์ํ ๋๋ get(key) ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ค.
HashMap<String, Integer> scoreMap = new HashMap<>();
scoreMap.put("Alice", 90);
scoreMap.put("Bob", 85);
Alice์ ์ ์๋ scoreMap.get("Alice")์ด๋ค.
2. ๋ฐ์ดํฐ ์ญ์
- ํน์ ํค-๊ฐ ์์ ์ญ์ ํ ๋๋ remove(key) ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ค.
- ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ์ญ์ ํ ๋๋ clear() ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ค.
scoreMap.remove("Bob");
scoreMap.clear(); // ๋ชจ๋ ๋ฐ์ดํฐ ์ญ์
3. ๋ฐ์ดํฐ ์์
- ๊ธฐ์กด ๊ฐ์ ์๋ก์ด ๊ฐ์ผ๋ก ๋์ฒดํ ๋๋ put(key, newValue) ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ค.
- ํน์ ํค์ ๊ฐ์ ์๋ก์ด ๊ฐ์ผ๋ก ๋ณ๊ฒฝํ ๋๋ replace(key, newValue) ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ค.
- ์์:
scoreMap.put("Alice", 95); // ๊ธฐ์กด ๊ฐ 90์ 95๋ก ๋ณ๊ฒฝ
scoreMap.replace("Alice", 92); // ๊ฐ์ 92๋ก ๋ณ๊ฒฝ
4. ๋ฐ์ดํฐ ์ํ
- ๋ชจ๋ ํค ๋ชฉ๋ก์ ๊ฐ์ ธ์ฌ ๋๋ keySet() ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ค.
- ๋ชจ๋ ๊ฐ ๋ชฉ๋ก์ ๊ฐ์ ธ์ฌ ๋๋ values() ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ค.
- ๋ชจ๋ ํค-๊ฐ ์์ ๊ฐ์ ธ์ฌ ๋๋ entrySet() ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ค.
for (String key : scoreMap.keySet()) {
System.out.println(key + "์ ์ ์๋ " + scoreMap.get(key) + "์ด๋ค.");
}
๐ HashSet
HashSet์ ์ค๋ณต์ ํ์ฉํ์ง ์๋ ์๋ฃ๊ตฌ์กฐ์ด๋ฏ๋ก, ๋ฐ์ดํฐ์ ์ค๋ณต ์ ๊ฑฐ, ํฉ์งํฉ, ๊ต์งํฉ, ์ฐจ์งํฉ ๋ฑ์ ์ฐ์ฐ์ ์ ์ฉํ๊ฒ ์ฌ์ฉ๋๋ค.
1. ๋ฐ์ดํฐ ์ถ๊ฐ
- ๋ฐ์ดํฐ๋ฅผ ์ถ๊ฐํ ๋๋ add(element) ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ค.
- ์ค๋ณต๋ ๋ฐ์ดํฐ๋ ์๋์ผ๋ก ์ ๊ฑฐ๋๋ค.
HashSet<String> nameSet = new HashSet<>();
nameSet.add("Alice");
nameSet.add("Bob");
nameSet.add("Charlie"); // ์ค๋ณต๋ ๋ฐ์ดํฐ๋ ์๋์ผ๋ก ์ ๊ฑฐ๋๋ค.
2. ๋ฐ์ดํฐ ์ญ์
- ํน์ ๋ฐ์ดํฐ๋ฅผ ์ญ์ ํ ๋๋ remove(element) ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ค.
- ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ์ญ์ ํ ๋๋ clear() ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ค.
nameSet.remove("Bob");
nameSet.clear(); // ๋ชจ๋ ๋ฐ์ดํฐ ์ญ์
3. ๋ฐ์ดํฐ ๊ฒ์
- ํน์ ๋ฐ์ดํฐ๊ฐ ํฌํจ๋์ด ์๋์ง ํ์ธํ ๋๋ contains(element) ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ค.
boolean hasAlice = nameSet.contains("Alice"); // true
4. ๋ฐ์ดํฐ ์ํ
- ๋ฐ์ดํฐ๋ฅผ ์ํํ ๋๋ iterator() ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ค.
public Iterator<E> iterator()
Set<String> fruits = new HashSet<String>();
fruits.add("apple");
fruits.add("banana");
fruits.add("kiwi");
Iterator<String> it = fruits.iterator();
while (it.hasNext())
System.out.println("fruits: " + it.next());
'JAVA > Theory' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [Spring] Spring Security (0) | 2024.05.13 |
|---|---|
| [Java] Deque์ LinkedList (0) | 2024.04.26 |
| [Java] Stack๊ณผ Queue ๊ทธ๋ฆฌ๊ณ Deque (0) | 2024.04.25 |
| [MAVEN] SpringMVC ๋ฒ์ 2 (0) | 2024.03.05 |
| [MAVEN] SpringMVC ๋ฒ์ 1 (0) | 2024.03.05 |
๋๊ธ