📌 Arrays.asList()
- Java 1.2 이후부터 Arrays에 포함된 메서드
- 리스트에 대한 변경 사항이 원래 배열에 직접적으로 영향을 미치며, 그 반대도 마찬가지
- 기존 요소의 값을 변경할 수 있지만, 고정된 크기이므로 요소를 추가하거나 제거할 수는 없음
- 추가, 제거를 시도하면 UnsupportedOperationException이 발생함
📌 List.of()
- Java 9 이후부터 List 인터페이스에 도입됨
- 수정할 수 없는 불변의 리스트를 생성함
- 고정된 크기의 리스트를 생성하고자 하는 경우에 적합함
📌 공통점
- 두 방법 모두 크기가 불변이어서, 목록이 늘어나거나 줄어들지 않음
- 두 경우 모두 목록에 있는 기존 요소의 값을 수정할 수 있음
📌 차이점
- List.of()에서는 set(index, element) 작업이 허용되지 않지만, Arrays.asList()에서는 해당 메서드를 사용할 수 있음
📌 결론
- 불변 목록이 필요하다면 List.of()가 더 나은 선택
- 배열로 지원되는 가변 목록이 필요하고, 제한 크기를 알고 있다면 Arrays.asList()가 더 적합함