Most Java Collections does not allow null keys and null values.
Also, only a few of the newer concurrent Java collections disallow nulls. All the classes commonly used allow null, as well as the collection interfaces themself.
Java had the chance to address this with Optional, but they got the implementation of the null handling completely wrong.
Now they are stuck with it, which caused an obscene amount of complexity in the new generics spec to work around it.