查看http://java.sun.com/j2se/1.4.2/docs/api/java/util/LinkedHashMap.html,了解具有可预测迭代顺序的Map实现.如果您实际上没有按键查找,也可以考虑使用List.
让我们来看看。您的要求似乎是:
没有一个标准的 Java 集合类可以满足所有这些要求。而且我认为 Commons 集合或 Google 集合也不会......
如果您要放弃要求 3,那么 a TreeSet(用自定义实例化Comparator)就可以完成这项工作。如果你要放弃要求 4,那么 aLinkedHashMap就可以完成这项工作。
要满足所有要求,您需要执行以下操作之一:
使用LinkedHashMap,当您想要根据提取映射集合的值以某种顺序进行迭代时values,使用自定义比较器对其进行排序,并返回已排序集合的迭代器。
同时使用 aLinkedHashMap和 a TreeMap,并并行更新两者。
LinkedHashMap为 a和 a创建自定义外观类TreeMap。put当您调用等时,这需要使两个数据结构保持最新remove,并且还提供额外的方法来获取排序值。