package java.util;
//在有序Map集合中针对给定搜索目标返回最接近匹配项的导航方法
public interface NavigableMap<K, V> extends SortedMap<K, V> {
// 找到第一个比给定的key小的键值对
Map.Entry<K, V> lowerEntry(K key);
// 找到第一个比给定的key小的key
K lowerKey(K key);
// 找到第一个小于或等于给定key的键值对
Map.Entry<K, V> floorEntry(K key);
// 找到第一个小于或等于给定key的key
K floorKey(K key);
//找到第一个大于或等于给定key的键值对
Map.Entry<K, V> ceilingEntry(K key);
//找到第一个大于或等于给定key的key
K ceilingKey(K key);
// 找到第一个大于给定key的键值对
Map.Entry<K, V> higherEntry(K key);
// 找到第一个大于给定key的kkey
K higherKey(K key);
// 最小key的键值对
Map.Entry<K, V> firstEntry();
//最大key的键值对
Map.Entry<K, V> lastEntry();
//移除并返回最小key的键值对
Map.Entry<K, V> pollFirstEntry();
//移除并返回最大key的键值对
Map.Entry<K, V> pollLastEntry();
//返回倒序的NavigableMap
NavigableMap<K, V> descendingMap();
//返回key集合
NavigableSet<K> navigableKeySet();
//返回倒序的NavigableSet
NavigableSet<K> descendingKeySet();
//返回一个子Map,fromInclusive,toInclusive来决定左右端点的开闭
NavigableMap<K, V> subMap(K fromKey, boolean fromInclusive,
K toKey, boolean toInclusive);
// 返回小于tokey的子NavigableMap,inclusive来决定是否包含tokey
NavigableMap<K, V> headMap(K toKey, boolean inclusive);
// 返回大于fromKey的子NavigableMap,inclusive来决定是否包含fromKey
NavigableMap<K, V> tailMap(K fromKey, boolean inclusive);
//获取一个SortedMap,左闭右开区间[formkey,tokey)
SortedMap<K, V> subMap(K fromKey, K toKey);
//获取一个SortedMap,小于tokey,不包含tokey
SortedMap<K, V> headMap(K toKey);
//获取一个SortedMap,大于等于tailMap,包含fromkey
SortedMap<K, V> tailMap(K fromKey);
}