已经知道了 HashMap 是无序存储:
public class Test {
public static void main(String[] args) {
Map<String, String> map = new HashMap<String, String>(); map.put("3", "yolo_3"); map.put("2", "yolo_2"); map.put("1", "yolo_1"); Set<Map.Entry<String, String>> set = map.entrySet(); Iterator<Map.Entry<String, String>> iterator = set.iterator(); while (iterator.hasNext()) {
Map.Entry<String, String> next = iterator.next(); System.out.println(next.getKey() + " --> " + next.getValue()); } } }
也就是结果的输出,并不是按照输入的顺序进行打印:

这是,我们使用 LinkedHashMap 进行同样的存储操作:

可以看到这里 LinkedHashMap 的存储顺序默认是插入顺序
其实通过源码也可以发现:LinkedHashMap 继承了 HashMap,所以 HashMap 的方法,LinkedHashMap 也是都适用的。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/217602.html原文链接:https://javaforall.net
