Tôi chỉ nhận thấy rằng ImmutableList.of(E[])
không còn được dùng vì lợi ích của ImmutableList.copyOf()
, vì lý do rõ ràng rằng danh sách này không thể thực hiện bất biến nếu mảng thô được sử dụng ở nơi khác. Điều gì sẽ xảy ra nếu bạn có phương thức trả về mảng và bạn biết thực tế là phương thức không giữ tham chiếu đến mảng và mã của bạn không giữ tham chiếu đến mảng khác chuyển nó đến ImmutableList.of()
?ổi: thực hành tốt nhất với ImmutableList.of (E [])
Tôi có nên ...
- tiếp tục sử dụng
ImmutableList.of(E[])
(có vẻ như một ý tưởng tồi vì phương pháp này sẽ biến mất) - sử dụng
Collections.unmodifiableList(Arrays.asList())
- sử dụng
ImmutableList.copyOf()
- điều này có vẻ như ý tưởng tốt nhất nơi các vấn đề về hiệu suất/tài nguyên không phát sinh, nếu không bản sao là không cần thiết.