๊ด€๋ฆฌ ๋ฉ”๋‰ด

ruriruriya

[Java] ์ž๋ฐ” - HashMap ์ด๋ž€? ๋ณธ๋ฌธ

๐ŸชJava

[Java] ์ž๋ฐ” - HashMap ์ด๋ž€?

๋ฃจ๋ฆฌ์•ผใ…‘ 2024. 2. 26. 20:18
๋ฐ˜์‘ํ˜•

์ž๋ฐ”(Java)์˜ HashMap์€ ํ‚ค(key)์™€ ๊ฐ’(value)์˜ ์Œ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ์ž๋ฃŒ๊ตฌ์กฐ๋‹ค.

๊ฐ ํ‚ค๋Š” ๊ณ ์œ ํ•ด์•ผ ํ•˜๋ฉฐ, ํ•˜๋‚˜์˜ ํ‚ค๋Š” ํ•˜๋‚˜์˜ ๊ฐ’์— ๋งคํ•‘๋œ๋‹ค.
HashMap์„ ์‚ฌ์šฉํ•˜๋ฉด ํ‚ค๋ฅผ ํ†ตํ•ด ๋น ๋ฅด๊ฒŒ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฒ€์ƒ‰ํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ ์ด๋Š” ๋‚ด๋ถ€์ ์œผ๋กœ ํ•ด์‹œ ํ…Œ์ด๋ธ”์„ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

ํ•ด์‹œ ํ…Œ์ด๋ธ”์€ ํ‚ค์— ๋Œ€ํ•œ ํ•ด์‹œ ํ•จ์ˆ˜๋ฅผ ์ ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ์˜ ์ €์žฅ ์œ„์น˜๋ฅผ ๊ฒฐ์ •ํ•œ๋‹ค.

HashMap์˜ ์ฃผ์š” ํŠน์ง•

  • ๋น ๋ฅธ ๊ฒ€์ƒ‰ ์†๋„: ํ‚ค๋ฅผ ํ†ตํ•ด ๊ฐ’์„ ๋น ๋ฅด๊ฒŒ ๊ฒ€์ƒ‰ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ํ‚ค์˜ ๊ณ ์œ ์„ฑ: ๊ฐ™์€ ํ‚ค๋กœ ์—ฌ๋Ÿฌ ๊ฐ’์„ ์ €์žฅํ•˜๋ ค๊ณ  ํ•˜๋ฉด, ๋งˆ์ง€๋ง‰์— ์ €์žฅํ•œ ๊ฐ’์œผ๋กœ ๋Œ€์ฒด๋œ๋‹ค.
  • ์ˆœ์„œ ๋ณด์žฅํ•˜์ง€ ์•Š์Œ: ๋ฐ์ดํ„ฐ์˜ ์ €์žฅ ์ˆœ์„œ๋ฅผ ๋ณด์žฅํ•˜์ง€ ์•Š๋Š”๋‹ค. ์ฆ‰, ์ž…๋ ฅ ์ˆœ์„œ๋Œ€๋กœ ๋ฐ์ดํ„ฐ๊ฐ€ ์ €์žฅ๋˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ๋‹ค.
  • null ๊ฐ’ ํ—ˆ์šฉ: ํ‚ค์™€ ๊ฐ’์œผ๋กœ null์„ ํ—ˆ์šฉํ•œ๋‹ค. ํ•˜์ง€๋งŒ ํ‚ค๋กœ null์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ๊ถŒ์žฅ๋˜์ง€ ์•Š๋Š”๋‹ค.
import java.util.HashMap;

public class Example {
    public static void main(String[] args) {
        // HashMap ์ƒ์„ฑ
        HashMap<String, Integer> map = new HashMap<>();

        // ๋ฐ์ดํ„ฐ ์ถ”๊ฐ€
        map.put("์‚ฌ๊ณผ", 10);
        map.put("๋ฐ”๋‚˜๋‚˜", 3);
        map.put("์ฒด๋ฆฌ", 5);

        // ๋ฐ์ดํ„ฐ ๊ฒ€์ƒ‰
        System.out.println("์‚ฌ๊ณผ์˜ ์ˆ˜๋Ÿ‰: " + map.get("์‚ฌ๊ณผ"));

        // ๋ฐ์ดํ„ฐ์˜ ์กด์žฌ ์—ฌ๋ถ€ ํ™•์ธ
        if (map.containsKey("๋ฐ”๋‚˜๋‚˜")) {
            System.out.println("๋ฐ”๋‚˜๋‚˜๊ฐ€ ๋ชฉ๋ก์— ์žˆ์Šต๋‹ˆ๋‹ค.");
        }

        // ๋ฐ์ดํ„ฐ ์‚ญ์ œ
        map.remove("์ฒด๋ฆฌ");

        // ์ „์ฒด ๋ฐ์ดํ„ฐ ์ถœ๋ ฅ
        for (String key : map.keySet()) {
            System.out.println(key + ": " + map.get(key));
        }
    }
}
๋ฐ˜์‘ํ˜•