3
可能重複:
Why aren’t Java Collections remove methods generic?Java列表界面包含(對象O)方法的簽名
Java的Collection<E>
接口具有contains
方法具有以下簽名:
boolean contains(Object o)
由於接口類型爲E
不應簽名是
boolean contains(E o)
,以反映並只允許E
類型的參數。
同樣的問題可以關於remove(Object o)
方法
可能是它在java世界中誕生之前被添加的世界 –
查看[Collection JavaDoc](http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html# contains(java.lang.Object)),它看起來像Java 1.2中的方法,泛型在Java語言中還不存在。 –
此問題以前已被問及過很多次:[爲什麼Java Map對get和remove方法採用非類型化參數?](http://stackoverflow.com/questions/4269147/why-does-java-mapk -v-take-an-untyped-parameter-for-the-the-get-and-remove-methods)和[爲什麼不是Java集合刪除方法通用?](http://stackoverflow.com/questions/104799/why -arent-java-collections-remove-methods-generic) –