Java 17 기준으로 Collections 정렬 유틸과 불변 컬렉션(List.of/Map.of), unmodifiable vs copyOf 차이를 실무 관점에서 정리합니다. 리스트를 정렬했는데 “원본이 바뀌어 버려서” 다른 로직이 깨진 경험이 있으신가요? 또는 List.of()로 만든 리스트에 add()를 했다가 런타임 예외를 만나 당황하신 적도 있을 거예요. 컬렉션은 자주 쓰는 만큼, “의도한 변경 가능성(mutability)”을 코드로 정확히 표현하는 게 생각보다 중요합니다.핵심 개념 (Java Collections 유틸과 불변 컬렉션이 중요한 이유)Java에서 컬렉션을 다룰 때 실무 사고의 대부분은 두 가지에서 나옵니다.정렬은 “어디를” 바꾸는가?Collections.sort(list)나 list..