Java · Intermediário · Português · Técnico
coleção imutável
Coleção criada com List.of, Set.of ou Map.of que não aceita adição, remoção nem null. Qualquer tentativa de alterar lança UnsupportedOperationException.
Onde usar
Aparece em constantes e retornos defensivos. Em code review: 'devolva List.copyOf para não expor a lista interna'.
Em código
var fixa = List.of("a", "b");
fixa.add("c"); // lança exceção
var orig = new ArrayList<>(fixa);
var copia = List.copyOf(orig);
orig.add("x"); // copia segue [a, b]Exemplos
Devolve uma coleção imutável para não expor a lista interna.
O List.of quebrou porque alguém tentou fazer add nele.
Cuidado
Não confunda com Collections.unmodifiableList, que é só uma visão: se a lista original mudar, a visão muda junto.
Sinônimos
List.of
Antônimos
coleção mutável