在我的代码中,我使用了一组交错的LinkedHashMaps,如下所示。代码很好,并给我我想要的结果,除了它自动删除重复。我无法找到如何使用TreeMap或Set来保留重复项。
LinkedHashMap<String, LinkedHashMap<Integer, LinkedHashMap<String, Vector<String>>>>
dataAll =new LinkedHashMap<String, LinkedHashMap<Integer, LinkedHashMap<String,
Vector<String>>>>();
答案 0 :(得分:5)
LinkedHashMap仍然是一个Map数据结构。它将唯一键映射到值。如果为键分配两个不同的值,则第二个值将仅替换分配给该键的第一个值。
还想象为什么你需要一张重复密钥的地图? Map的唯一目的是在键/值对之间提供一对一的关系。它不处理一对多的关系。
如果必须使用值列表映射键,请使用以下内容:
LinkedHashMap<String, List<..>>
这允许您将一个键映射到值列表。