📜  Java中的TreeMap headMap()方法(1)

📅  最后修改于: 2023-12-03 14:42:55.602000             🧑  作者: Mango

Java 中的 TreeMap headMap() 方法

简介

TreeMap 是一种基于红黑树实现的有序映射。headMap(K key) 方法返回一个头部视图,其键严格小于 key。

public SortedMap<K,V> headMap(K toKey)
参数

toKey:键的最大值(不包括)。

返回值

一个 SortedMap,其键严格小于 toKey。如果 TreeMap 为空,则返回空的 SortedMap。

示例
TreeMap<Integer, String> map = new TreeMap<>();

map.put(1, "one");
map.put(2, "two");
map.put(3, "three");
map.put(4, "four");
map.put(5, "five");

SortedMap<Integer, String> headMap = map.headMap(4);

System.out.println(headMap); // 输出 {1=one, 2=two, 3=three}

注意事项
  • 该方法返回的是 TreeMap 的一个子视图,对视图的修改会影响原映射。
  • toKey 不在 TreeMap 中存在,headMap() 方法返回的视图中不包含 toKey。
  • 修改视图(包括添加键值对和删除键值对)时,如果操作后超出了 headMap() 范围,则会抛出 IllegalArgumentException 异常。