java.util.TreeMap.headMap() 方法返回此映射中键严格较少的部分的视图比 toKey.返回的映射由此映射支持,因此返回的映射中的更改会反映在此映射中,反之亦然。返回的映射支持该映射支持的所有可选映射操作。
语法
public SortedMap<K,V> headMap(K toKey)
这里,K和V分别是容器维护的键和值的类型。
参数
toKey | 指定返回映射中键的高端点(不包括)。 |
返回值
返回此映射中其键严格小于 toKey 的部分的视图。
异常
- 如果 toKey 与此映射的比较器不兼容(或者,如果映射没有比较器,如果 toKey 未实现 Comparable),则抛出 ClassCastException。
- 抛出 ClassCastException。 li>
- 如果 toKey 为 null 并且此映射使用自然排序,或其比较器不允许 null 键,则抛出 NullPointerException。
- 抛出 IllegalArgumentException>,如果这个map本身有一个限制范围,并且 toKey 位于该范围的边界之外。
示例:
在下面的示例中,java.util.TreeMap.headMap() 方法返回给定映射中包含严格小于指定值的键的部分的视图。
import java.util.*; public class MyClass { public static void main(String[] args) { //创建树形图 TreeMap<Integer, String> Map1 = new TreeMap<Integer, String>(); //填充Map1 Map1.put(102, "John"); Map1.put(103, "Marry"); Map1.put(101, "Kim"); Map1.put(104, "Jo"); Map1.put(105, "Sam"); //打印Map1 System.out.println("Map1 contains: " + Map1); //创建headmap(限制key直到key为103) SortedMap<Integer, String> Map2 = new TreeMap<Integer, String>(); Map2 = Map1.headMap(103); //打印Map2 System.out.println("Map2 contains: " + Map2); } }
上面的代码将是:
Map1 contains: {101=Kim, 102=John, 103=Marry, 104=Jo, 105=Sam} Map2 contains: {101=Kim, 102=John}