Programming/JAVA

📌 List, Set, Map 차이점 1분 컷 — 진짜 외우는 법 알려드림

추천캐릭터 2025. 8. 4. 20:47
728x90
반응형

📚 목차

  1. 이게 왜 중요한데?
  2. 표 하나로 비교 끝!
  3. 언제 뭘 써야 하나요?
  4. 마무리 요약 (진짜 1분 컷)

1. 이게 왜 중요한데?

자바 개발하면서 List, Set, Map 구분 못 하면...
👉 NullPointerException, IndexOutOfBoundsException, 동기화 오류
줄줄이 터집니다.
그럼 PM이 와서 말하죠:

“그거... 그냥 ArrayList 말고 HashSet 쓰면 안 되나?”


2. 표 하나로 비교 끝! ✅

구분ListSetMap
중복 허용 ✅ O ❌ X ✅ Value만 O
순서 유지 ✅ O ❌ X (HashSet), ✅ TreeSet은 정렬됨 ❌ X (정렬 불가)
인덱스로 접근 ✅ O (get(index)) ❌ X ❌ X
Key-Value 구조 ❌ X ❌ X ✅ O
대표 클래스 ArrayList, LinkedList HashSet, TreeSet HashMap, TreeMap
 

3. 언제 뭘 써야 하나요?

상황추천 컬렉션
데이터 순서 유지 + 중복 허용 ArrayList
중복 없이 빠르게 저장 HashSet
정렬된 데이터 필요 TreeSet, TreeMap
Key로 조회 필요 HashMap
삽입/삭제가 많음 LinkedList
 

4. 마무리 요약 (1분 컷 핵심)

List<String> list = new ArrayList<>(); // 순서 O, 중복 O
Set<String> set = new HashSet<>();     // 순서 X, 중복 X
Map<String, String> map = new HashMap<>(); // Key-Value

📌 기억법:

  • List: 줄세우기 좋아함
  • Set: 중복 싫어함
  • Map: Key로 놀고 Value로 살고
728x90
반응형