Java - 문제 미리보기

문제 2377

easy
다음 코드의 실행 결과는? ```java HashMap countries = new HashMap<>(); countries.put("Norway", "Oslo"); countries.put("Sweden", "Stockholm"); countries.put("Norway", "Bergen"); countries.put("Denmark", "Copenhagen"); System.out.println(countries.size()); ```
A. 4
B. 3
C. 2
D. 컴파일 에러

정답: B

HashMap에서 동일한 키를 다시 추가하면 기존 값이 새로운 값으로 덮어써집니다. 코드 실행 과정: 1. `"Norway" → "Oslo"` 추가 (크기: 1) 2. `"Sweden" → "Stockholm"` 추가 (크기: 2) 3. `"Norway" → "Bergen"` 추가 → 기존 "Oslo"를 "Bergen"으로 덮어씀 (크기: 여전히 2) 4. `"Denmark" → "Copenhagen"` 추가 (크기: 3) HashMap의 키 고유성 규칙: ⦁ 키는 고유해야 함: 중복된 키는 허용되지 않음 ⦁ 값 덮어쓰기: 같은 키로 다시 `put()` 호출 시 기존 값이 새 값으로 교체됨 ⦁ 크기 계산: `size()`는 고유한 키의 개수만 반환 최종 상태: ```java { "Norway" → "Bergen", // "Oslo"에서 "Bergen"으로 변경됨 "Sweden" → "Stockholm", "Denmark" → "Copenhagen" } // 총 3개의 키-값 쌍 ``` 이는 Set의 중복 제거와 유사한 동작이지만, 값이 덮어써진다는 점이 다릅니다.

💡 학습 팁

이 문제를 포함한 Java 과목의 모든 문제를 순차적으로 풀어보세요. 진행상황이 자동으로 저장되어 언제든지 이어서 학습할 수 있습니다.