Я только что заметил, что ImmutableList.of (E [])
устарел в пользу ImmutableList.copyOf ()
по той очевидной причине, что список может на самом деле нельзя сделать неизменяемым, если необработанный массив используется где-то еще.
Что делать, если у вас есть метод, который возвращает массив, и вы точно знаете, что этот метод не удерживает ссылку на массив, а ваш код не удерживает ссылку на массив, кроме передачи ее в ImmutableList.of ()
?
Должен ли я ...
ImmutableList.of (E [])
(кажется плохой идеей, поскольку метод исчезнет) Collections.unmodifiableList (Arrays.asList ())
ImmutableList.copyOf ()
- это кажется лучшей идеей, когда проблем с производительностью / ресурсами не возникает, иначе копия не нужна.