2017-10-08 62 views
0

LinkedHashMap显然是一个有序的Map。它基于插入进行订购。为什么LinkedHashMap没有实现SortedMap?

那么为什么它不实现SortedMap?

+3

“有序”和“分类”并不真正意味着同样的事情整理。 –

+0

因为语言就是这样建造的。如果你想实现,你可以继承它并自己实现它。 –

+0

@JoeC你能更具体吗?在这种情况下,它们以何种方式彼此不同? – William

回答

1

Java docs

的哈希表和链接列表实现Map接口,具有 预知的迭代顺序。该实施方式与HashMap 的不同之处在于其保持通过其所有 条目运行的双向链表。此链接列表定义了迭代排序,通常是键被插入到地图 (插入顺序)中的顺序。

而有序映射

地图,将进一步提供关于键的总体排序。该地图是 根据其按键的自然顺序排序,或由 比较器按排序地图创建时间提供。

所以Boths存在不同的目的在哪里的LinkedHashMap提供迭代在钥匙插入相同的顺序,而SortedMap的是使用比较或类似

相关问题