我需要一个键值对数据结构,它可以保证按照添加顺序检索条目,就像单ArrayList
或Vector
一样。可以将其视为启用键值对的ArrayList。请记住,TreeMap
不会这样做,因为排序不是按键的值,而是按插入时间。是否有符合这些要求的Java Collection?我浏览了不同的Map
实现,但找不到任何匹配。
我知道我可以定义我的类,它接受键和值并将其放在ArrayList中,但这只是上述类的选项B.
答案 0 :(得分:6)
您在寻找LinkedHashMap吗?
Map接口的哈希表和链表实现,具有可预测的迭代顺序。
如果符合您的目的,您也可以查看Guava's ImmutableMap。
基于哈希的不可变Map,具有可靠的用户指定迭代顺序。不允许使用null键或值。
答案 1 :(得分:4)
答案 2 :(得分:0)
使用java.util.LinkedHashMap
Javadocs here
“此链接列表定义了迭代排序,通常是键插入映射的顺序(插入顺序)”