표준 List는 가변성과 공유 계약부터 구분한다
구현 이름보다 크기 변경·null·원본 공유·스냅숏 여부를 먼저 정합니다.
| 선택 | 크기 변경 | 핵심 계약 |
|---|---|---|
| ArrayList | 가능 | 일반 가변 목록 |
| LinkedList | 가능 | 양방향 Node·Deque |
| List.of | 불가 | null도 불가 |
| Arrays.asList | 불가 | 원본 배열 원소 공유 |
| List.copyOf | 불가 | 불변 스냅숏 |
핵심: 조회와 끝 추가 중심 목록은 ArrayList를 기본으로 두고 Deque 목적은 별도 인터페이스로 봅니다.