Java 多值映射<;字符串,字符串>;,不推荐使用多值Map和MultiHashMap,我应该使用什么

Java 多值映射<;字符串,字符串>;,不推荐使用多值Map和MultiHashMap,我应该使用什么,java,collections,deprecated,apache-commons-collection,Java,Collections,Deprecated,Apache Commons Collection,MultiValueMap、MultiValuedMap和MultiHashMap,所有这些都已弃用,它们的替代方案是什么?这三种都已弃用,在哪种版本的java中?是替代方案,并且没有弃用: 定义一个映射,该映射保存每个键的值集合 例如: MultiValuedMap<K, String> map = new MultiValuedHashMap<K, String>(); map.put(key, "A"); map.put(key, "B"); map.put

MultiValueMap
MultiValuedMap
MultiHashMap
,所有这些都已弃用,它们的替代方案是什么?这三种都已弃用,在哪种版本的java中?

是替代方案,并且没有弃用:

定义一个映射,该映射保存每个键的值集合

例如:

 MultiValuedMap<K, String> map = new MultiValuedHashMap<K, String>();
 map.put(key, "A");
 map.put(key, "B");
 map.put(key, "C");
 Collection<String> coll = map.get(key);
MultiValuedMap map=新的MultiValuedHashMap();
地图放置(图例“A”);
地图放置(键“B”);
地图放置(键“C”);
Collection coll=map.get(键);
它取代了

类现在在映射子包中作为多值映射提供。此版本将在collections v4.0中删除

以及:

已弃用。 从4.1开始,改用多值映射

与apache commons collections4依赖项jar相关的弃用

我认为您所指的第三个
MultiMap
已被弃用

是替换,但它没有弃用:

定义一个映射,该映射保存每个键的值集合

例如:

 MultiValuedMap<K, String> map = new MultiValuedHashMap<K, String>();
 map.put(key, "A");
 map.put(key, "B");
 map.put(key, "C");
 Collection<String> coll = map.get(key);
MultiValuedMap map=新的MultiValuedHashMap();
地图放置(图例“A”);
地图放置(键“B”);
地图放置(键“C”);
Collection coll=map.get(键);
它取代了

类现在在映射子包中作为多值映射提供。此版本将在collections v4.0中删除

以及:

已弃用。 从4.1开始,改用多值映射

与apache commons collections4依赖项jar相关的弃用


我想你所说的第三个
MultiMap
已经被弃用了

只要使用
Map
。在Java8中添加了新的
Map
方法后,这些多值映射类型的东西就不再需要了。我使用了List,但有人告诉我使用MultiHashMap或它的替代品进行优化。所以我很困惑。
列表
肯定和你提到的任何东西都不一样。它们是
Map
。因此,您的意思是,对于列表,多值Map的工作方式不同。这些类不是Java本身的一部分,因此它们不会被任何版本的Java弃用。您应该指定这些类的完整限定名,以便我们知道它们来自哪个库。只需使用
Map
。在Java8中添加了新的
Map
方法后,这些多值映射类型的东西就不再需要了。我使用了List,但有人告诉我使用MultiHashMap或它的替代品进行优化。所以我很困惑。
列表
肯定和你提到的任何东西都不一样。它们是
Map
。因此,您的意思是,对于列表,多值Map的工作方式不同。这些类不是Java本身的一部分,因此它们不会被任何版本的Java弃用。您应该指定这些类的完整限定名,以便我们知道它们来自哪个库。(MultiValuedMap无法解析为类型)是我得到的错误。@WhiteWalker您可以使用
MultiValuedMap=new ArrayListValuedHashMap()但我必须导入的内容,因为无法解决MultiValuedMap和ArrayListValuedHashMap中提到的给定错误。@WhiteWalker commons-collections4 jar:(MultiValuedMap无法解析为类型)就是我得到的错误。@WhiteWalker您可以使用
MultiValuedMap=new ArrayListValuedHashMap()但我必须导入的内容,因为无法解决MultiValuedMap和ArrayListValuedHashMap中提到的给定错误。@WhiteWalker the commons-collections4 jar: