在java中,是有一个自带的有序 map,是 TreeMap,但是这个是根据 key 值自动排序的,无法保留原始顺序,也无法根据 value 值排序。
仔细思考了一下,其实绝大多数情况,我们并不是需要一个可以随时根据 key 查 value 的有序 map,而是根据一个能同时保存 key,value 的 list。所以就设计了下面这种类型来顶替有序 map。
List<Map.Entry<?, ?>>
生成代码如下
List<Map.Entry<String, Integer>> entryList = new ArrayList<>();
for (int i = 0; i < 3; i++) {
Map.Entry<String, Integer> entry = new AbstractMap.SimpleEntry<>("a", 0);
entryList.add(entry);
}