๐Ÿ’ก (Java) Map์˜ Map.Entry

๋ฐ•ํ˜„์•„ยท2024๋…„ 10์›” 26์ผ
0

๊ธฐ์ดˆ

๋ชฉ๋ก ๋ณด๊ธฐ
18/31

๐Ÿ’ก Map์˜ Map.Entry

Map.Entry๋Š” Map ์ธํ„ฐํŽ˜์ด์Šค์— ์ •์˜๋œ ๋‚ด๋ถ€ ์ธํ„ฐํŽ˜์ด์Šค๋กœ, HashMap, TreeMap, LinkedHashMap ๋“ฑ ๋‹ค์–‘ํ•œ Map ๊ตฌํ˜„์ฒด์—์„œ key-value ์Œ์„ ๊ฐ€์ ธ์˜ค๋Š” ๋ฐ ์‚ฌ์šฉ๋œ๋‹ค. entrySet() ๋ฉ”์„œ๋“œ๋ฅผ ํ†ตํ•ด Map์˜ ๊ฐ Entry ๊ฐ์ฒด๋ฅผ ์ˆœํšŒํ•˜๋ฉฐ ํ‚ค์™€ ๊ฐ’์„ ์‰ฝ๊ฒŒ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋‹ค.

์˜ˆ์‹œ

import java.util.HashMap;
import java.util.Map;

public class EntryExample {
    public static void main(String[] args) {
        // HashMap ์ดˆ๊ธฐํ™”
        HashMap<String, Integer> map = new HashMap<>();
        map.put("Alice", 30);
        map.put("Bob", 25);
        map.put("Charlie", 35);

        // Map.Entry๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ‚ค์™€ ๊ฐ’์„ ์ถœ๋ ฅ
        for (Map.Entry<String, Integer> entry : map.entrySet()) {
            String key = entry.getKey();
            Integer value = entry.getValue();
            System.out.println("Key: " + key + ", Value: " + value);
        }
    }
}

์ถœ๋ ฅ ๊ฒฐ๊ณผ

Key: Alice, Value: 30
Key: Bob, Value: 25
Key: Charlie, Value: 35

์„ค๋ช…

  • entrySet() : map.entrySet()์€ HashMap์— ์žˆ๋Š” ๋ชจ๋“  Entry ๊ฐ์ฒด(๊ฐ๊ฐ์˜ ํ‚ค-๊ฐ’ ์Œ)๋ฅผ ํฌํ•จํ•˜๋Š” Set์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค.
  • Map.Entry<String, Integer> : entrySet()์„ ์ˆœํšŒํ•˜๋ฉด์„œ ๊ฐ ์—”ํŠธ๋ฆฌ์—์„œ entry.getKey()๋กœ ํ‚ค๋ฅผ ๊ฐ€์ ธ์˜ค๊ณ , entry.getValue()๋กœ ๊ฐ’์„ ๊ฐ€์ ธ์˜จ๋‹ค.
  • ์ถœ๋ ฅ : ํ‚ค์™€ ๊ฐ’์„ ์ˆœ์ฐจ์ ์œผ๋กœ ์ถœ๋ ฅํ•˜์—ฌ, Map์— ์žˆ๋Š” ๋ชจ๋“  ํ‚ค-๊ฐ’ ์Œ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

์ฃผ์š” ํฌ์ธํŠธ

Map.Entry๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด Map์˜ ์š”์†Œ๋ฅผ ์‰ฝ๊ฒŒ ํƒ์ƒ‰ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๋ชจ๋“  Map ๊ตฌํ˜„์ฒด์—์„œ ๋™์ผํ•œ ๋ฐฉ์‹์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์–ด ์ฝ”๋“œ๊ฐ€ ์œ ์—ฐํ•ด์ง‘๋‹ˆ๋‹ค.

0๊ฐœ์˜ ๋Œ“๊ธ€