230228 - HashMap에 다양한 타입을 집어넣을 때

ghltjd369·2023년 2월 28일
0


위와 같이 HashMap을 이용하여 다양한 타입의 정보들을 저장할 때는 Object를 사용하면 된다.

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

class Main {
    public static void main(String[] args) {
        new Sol().run();
        new Sol2().run();
    }
}

class Sol {
    public void run() {
        Map<String, Object> p1 = new HashMap<>();
        p1.put("이름", "홍길동");
        p1.put("나이", 22);
        p1.put("키", 170.5);

        Map<String, Object> p2 = new HashMap<>();
        p2.put("이름", "홍길순");
        p2.put("나이", 25);
        p2.put("키", 162.4);

        System.out.println(p1);
        System.out.println(p2);
    }
}

class Sol2 {
    public void run() {
        Map<String, Object> p1 = new HashMap<>() {{
            put("이름", "홍길동");
            put("나이", 22);
            put("키", 170.5);
        }};

        Map<String, Object> p2 = new HashMap<>() {{
            put("이름", "홍길순");
            put("나이", 25);
            put("키", 162.4);
        }};

        String p1Name = (String) p1.get("이름");
        int p1Age = (int) p1.get("나이");
        double p1Height = (double) p1.get("키");

        String p2Name = (String) p2.get("이름");
        int p2Age = (int) p2.get("나이");
        double p2Height = (double) p2.get("키");

        System.out.printf("%s, %d, %.1f\n", p1Name, p1Age, p1Height);
        System.out.printf("%s, %d, %.1f\n", p2Name, p2Age, p2Height);
    }
}

0개의 댓글