About this question
I wonder why java.util.ArrayList allows adding null. Is there any case where I would want to add null to an ArrayList?
I am asking this question because in a project we had a bug where some code was adding null to the ArrayList and it was hard to spot where the bug was. Obviously a NullPointerException was thrown but not until other code tried to access the element. The problem was how to locate the code that added the null object. It would have been easier if ArrayList threw an exception in the code where the elements were being added.