映射契约:put()和remove()参数

时间:2014-03-05 12:01:15

标签: java map interface

我刚注意到一件我从未注意过的奇怪事情。 java.util.Map是通用的,以K, V参数化。出于某种原因,部分方法将Object作为参数,我希望它可以是KV

例如,put方法定义为预期:V put(K key, V value)。但是获取和删除方法不是:V get(Object key)V remove(Object key)。它们都有一个注释,当密钥无法转换为ClassCastException时,K将被抛出。

番石榴库中的Multimap也是如此,我实际上注意到了这一点。

有人可以解释一下这些方法取代ObjectK的原因吗?

0 个答案:

没有答案
相关问题