불변 셋 생성
단일 팩토리 호출로 불변 셋을 만듭니다.
코드 비교
✕ Java 8
Set<String> set =
Collections.unmodifiableSet(
new HashSet<>(
Arrays.asList("a", "b", "c")
)
);
✓ Java 9+
Set<String> set =
Set.of("a", "b", "c");
이 코드에 문제가 있나요? 알려주세요.
모던 방식이 더 나은 이유
간결함
세 개의 중첩 호출 대신 한 줄로 작성합니다.
중복 감지
중복 요소를 실수로 전달하면 예외를 던집니다.
불변
생성 후 추가/제거가 불가능합니다.
이전 방식
장황한 래핑
모던 방식
Set.of()
JDK 버전
9
난이도
초급
JDK 지원
불변 셋 생성
사용 가능
JDK 9 (2017년 9월) 이후 널리 사용 가능
동작 원리
Set.of()는 null과 중복 요소를 생성 시점에 거부하는 진정한 불변 셋을 만듭니다. 더 이상 가변 셋을 래핑할 필요가 없습니다.
관련 문서