Các javadoc nói điều này:
"Trả về một danh sách bất biến chỉ chứa đối tượng đã chỉ định. Danh sách được trả về là tuần tự hóa."
Bạn hỏi:
Tại sao tôi muốn có một phương pháp riêng để làm điều đó?
Chủ yếu là để thuận tiện ... để tiết kiệm bạn phải viết một chuỗi các câu lệnh để:
- tạo một đối tượng danh sách trống
- thêm một yếu tố cho nó và
- bọc nó bằng một cái bọc bất biến.
Nó cũng có thể nhanh hơn một chút và / hoặc tiết kiệm một chút bộ nhớ, nhưng không chắc là những khoản tiết kiệm nhỏ này sẽ đáng kể. (Một ứng dụng tạo ra số lượng lớn các danh sách đơn lẻ là không bình thường để nói rằng ít nhất.)
Làm thế nào để bất biến đóng một vai trò ở đây?
Nó là một phần của đặc tả của phương thức; xem ở trên.
Có trường hợp sử dụng đặc biệt hữu ích nào cho phương pháp này, thay vì chỉ là một phương thức tiện lợi không?
Rõ ràng, có những trường hợp sử dụng thuận tiện khi sử dụng singletonListphương thức này. Nhưng tôi không biết làm thế nào bạn (khách quan) phân biệt giữa trường hợp sử dụng thông thường và trường hợp "đặc biệt hữu ích" ...