小编典典

Java订购地图

java

在Java中,是否有一个对象的作用类似于用于存储和访问键/值对的Map,但是可以返回键的有序列表和值的有序列表,从而使键和值列表的顺序相同?

因此,按照代码进行解释,我正在寻找某种行为,就像我的虚拟OrderedMap:

OrderedMap<Integer, String> om = new OrderedMap<>();
om.put(0, "Zero");
om.put(7, "Seven");

String o = om.get(7); // o is "Seven"
List<Integer> keys = om.getKeys();
List<String> values = om.getValues();

for(int i = 0; i < keys.size(); i++)
{
    Integer key = keys.get(i);
    String value = values.get(i);
    Assert(om.get(key) == value);
}

阅读 376

收藏
2020-03-23

共1个答案

小编典典

该SortedMap的接口(与实施TreeMap的)应该是你的朋友。

该接口具有以下方法:

  • keySet() 它以升序返回一组键
  • values() 它以对应键的升序返回所有值的集合

因此,此接口完全可以满足你的要求。但是,密钥必须具有有意义的顺序。否则,你可以使用LinkedHashMap,其顺序由插入顺序决定。

2020-03-23