У вас есть причина, почему MultiMap не является полностью общим?Общее в Google Multimap
containsEntry(Object key, Object value)
containsKey(Object key)
remove(Object key, Object value)
removeAll(Object key)
У вас есть причина, почему MultiMap не является полностью общим?Общее в Google Multimap
containsEntry(Object key, Object value)
containsKey(Object key)
remove(Object key, Object value)
removeAll(Object key)
Посмотрите на this answer что верно и для Multimap гуавы в. Кроме того, вы можете прочитать Kevin Bourrillion's blog entry (он гуава свинец DEV) объясняя тот же вопрос (обратите внимание, что add
использует общий тип E
):
реальная разница, что надстройка() может вызвать «ущерб» в коллекции при вызове с неправильным типом и содержит() и remove() не может.
Равномерно, методы Framework Java Collections (и Google Коллекция библиотеки тоже) не ограничивают типов их параметров кроме случаев, когда это необходимо для предотвращения сбора от получения сломанных.
Моя угадать его потому, что они хотят, подобный интерфейс для оригинального java.util.Map интерфейса
Здесь вы найдете здесь текст, содержащий Guava, и это объясняет, почему это было бы _bad_, например. 'containsKey' принимает только' K', а не 'Object'. –