java - 是否有像 Map<K,V,W, ...> 这样的数据结构?

标签 java map

有时我需要将多个值存储到 Map 中的一个键中.我知道解决这个问题的几种方法,例如:

  • 正在创建自己的 Map<K,V,W>执行
    • 很难写,可以很容易地重用,如果需要更多的值就会有问题
  • 使用 n Map<K,V>
    • 容易实现,需要很多Object,Key保存很多次:如果你在某处删除一个key会怎样?
  • 使用 Map<K, Map<I, V>>并用第二个键存储值
    • 易于实现,迭代时可能会出现问题(空值),还需要跟踪值键
  • 创建一个存储 K, V, W, ... 的类并使用 List<MyStorageClass> (或 Map<K, MyStorageClass> )
    • 似乎是个不错的选择:易于实现,但可能需要实现许多接口(interface)(例如 Compareable)
  • ... 可能更多

但我想知道最佳实践 Java 方式是什么(是的,我知道:“视情况而定”)?或者是否有一种语言内置功能,我可以使用它来实现最少的实现工作?

最佳答案

 Sometimes i need to store more than one value to a key in a Map

那为什么不使用多图呢? Multimap

关于java - 是否有像 Map<K,V,W, ...> 这样的数据结构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16056928/

相关文章:

java - SQL-将数字字符串转换为整数列表

java - 如何在数据库中查询结果集中的一个字段? (JAVA ODBC)

c++ - 为什么 STL 算法 find() 在 map 上不起作用?

java - 使用 lambda 获取 Map<K,V> 的最大键

google-maps - 如果您只有国家/地区名称,如何将谷歌地图围绕一个国家/地区居中

java - svn清理错误

java - 纹理未正确加载 slick java

java - 我怎样才能完成 android tv 项目中的 Activity

java - 以 LIFO 顺序将条目存储在 Java 映射中

c++ - STL 映射的自定义内存分配器