Why aren’t Java Collections remove methods generic?

Josh Bloch and Bill Pugh refer to this issue in Java Puzzlers IV: The
Phantom Reference Menace, Attack of the Clone, and Revenge of The
Shift
.

Josh Bloch says (6:41) that they attempted to generify the get method
of Map, remove method and some other, but “it simply didn’t work”.

There are too many reasonable programs that could not be generified if
you only allow the generic type of the collection as parameter type.
The example given by him is an intersection of a List of Numbers and a
List of Longs.

Leave a Comment