컬렉션 프레임워크 딥다이브
7. 정리
ArrayList는 1.5배 확장하는 동적 배열. 인덱스 접근 O(1), 중간 삽입 O(n).LinkedList는 캐시 비친화적이라 실무에서 거의 쓰지 않으며, 큐/스택은ArrayDeque.HashMap은hashCode로 버킷을 찾고equals로 키를 비교한다. 로드 팩터 0.75 초과 시 2배 확장, 버킷 리스트 8 초과 시 트리화.HashSet은 값 없는HashMap.- 순서:
HashMap없음,LinkedHashMap삽입/접근 순서(LRU 캐시),TreeMap키 정렬(범위 검색 O(log n)). - 순회 중 구조 변경은
ConcurrentModificationException.Iterator.remove,removeIf, 복사본 순회로 해결. - 키는 불변 객체(record, String)로, 반환은
List.copyOf로 방어적 복사, 정렬은Comparator.comparing().thenComparing()조합.
다음 레슨 06. 제네릭에서는 이 컬렉션들이 어떻게 List<Order>처럼 타입 안전하게 동작하는지, 와일드카드와 타입 소거의 원리를 다룬다.