Tôi tự hỏi tại sao java.util.ArrayListcho phép thêm null. Có trường hợp nào tôi muốn thêm nullvào ArrayListkhông?
Tôi đang hỏi câu hỏi này bởi vì trong một dự án, chúng tôi đã có một lỗi trong đó một số mã được thêm nullvào ArrayListvà thật khó để phát hiện ra lỗi đó ở đâu. Rõ ràng là a NullPointerExceptionđã bị ném nhưng cho đến khi mã khác cố gắng truy cập vào phần tử. Vấn đề là làm thế nào để xác định vị trí mã đã thêm nullđối tượng. Sẽ dễ dàng hơn nếu ArrayListném một ngoại lệ trong mã nơi các phần tử được thêm vào.
nulllà cách mặc định để biểu thị dữ liệu bị thiếu trong Java, cho dù bạn có thích hay không. Trong thực tế, rất nhiều người không thích nó và biến nó thành một đối số cho những thứ theo kiểu lập trình chức năng. Câu trả lời được đánh giá cao nhất không có ý nghĩa / không nắm bắt được bản chất của vấn đề.
null. "Mất tích" chỉ là một trong một số cách giải thích tiềm năng null. Các cách hiểu hợp lệ khác có thể là "Không xác định", "Không áp dụng" hoặc "Chưa được khởi tạo". Những gì nullđại diện phụ thuộc vào ứng dụng. Như cộng đồng Python sẽ nói: "Trước sự mơ hồ, hãy từ chối sự cám dỗ để đoán." Từ chối giữ null trong một container hoàn toàn có khả năng làm như vậy sẽ chỉ là như vậy - một phỏng đoán.
nullở hầu hết các bộ sưu tập của họ).