一、SortedMap 类结构图

二、源码分析
a. SortedMap 接口继承自 Map 接口,提供了按照 Key 排序的功能,即 keySet、values、entrySet 结果集有序
b. Key 需要实现 Comparable 接口或者能被指定的 Comparator 接收,以便排序
c. Map 接口定义中指出,应该使用 equals 判断 Key 是否相等,但 SortedMap 实际可以使用 Comparable/Comparator 代替
d. 这些函数返回的部分 Map (子 Map) 与原有 Map 有映射关系,一个变化影响另一个
The returned map is backed by this map, so changes in the returned map are reflected in this map, and vice-versa.
SortedMap<K,V> subMap(K fromKey, K toKey); // 包含 from,不包含 to
SortedMap<K,V> headMap(K toKey); // 不包含 to
SortedMap<K,V> tailMap(K fromKey); // 包含 from
e. 相比 Map 接口,主要增加了 comparator() 等比较相关方法,在定义中指出返回的 Set 应该是有序的
本文详细介绍了SortedMap接口的特性及其实现原理。SortedMap继承自Map接口,它为存储的键值对提供排序功能,键可以是实现了Comparable接口的对象或能够被Comparator处理的对象。文章还解释了SortedMap与Map的主要区别,包括如何通过Comparator进行比较,以及通过subMap、headMap和tailMap等方法创建子Map。
1268

被折叠的 条评论
为什么被折叠?



