Tworzenie niemutowalnej listy
Twórz niemutowalne listy w jednym czytelnym wyrażeniu.
Porównanie kodu
✕ Java 8
List<String> list =
Collections.unmodifiableList(
new ArrayList<>(
Arrays.asList("a", "b", "c")
)
);
✓ Java 9+
List<String> list =
List.of("a", "b", "c");
Widzisz problem z tym kodem? Daj nam znać.
Dlaczego nowoczesne podejście wygrywa
Jedno wywołanie
Zastąp trzy zagnieżdżone wywołania jedną metodą fabryczną.
Prawdziwie niemutowalna
Nie tylko opakowanie — sama lista jest niemutowalna.
Bezpieczna pod kątem null
Odrzuca elementy null podczas tworzenia, szybko sygnalizując błąd.
Stare podejście
Rozwlekłe opakowywanie
Nowoczesne podejście
List.of()
Od JDK
9
Poziom trudności
Początkujący
Wsparcie JDK
Tworzenie niemutowalnej listy
Dostępne
Szeroko dostępne od JDK 9 (wrzesień 2017)
Jak to działa
List.of() tworzy prawdziwie niemutowalną listę — bez opakowywania, bez kopii defensywnej. Jest odporna na null (odrzuca elementy null) i strukturalnie niemutowalna. Stary sposób wymagał trzech zagnieżdżonych wywołań.
Powiązana dokumentacja
Dowód