如果HashMap构造并"填充"为LinkedHashMap,它是否会在下一次读取时保留其元素的顺序?

jav*_*nix 2 java hashmap linkedhashmap data-structures

假设我有一个返回HashMap对象的Java方法.

因为LinkedHashMap是HashMap的子类,所以我可以从这个方法返回一个LinkedHashMap就好了.

在下一个"读取"操作(不添加/删除/修改K/V对)时,迭代结果方法的键(返回HashMap)将按照与原始LinkedHashMap相同的顺序进行,即使HashMap也是如此缺乏关键链接?

Ben*_*n S 10

是.对象的实际实例仍然是返回的LinkedHashMap,因此它将具有迭代顺序.

但是,我不会依赖于此.HashMap如果迭代顺序很重要,为什么使用s?这可能是代码味道.