📅  最后修改于: 2023-12-03 14:42:50.287000             🧑  作者: Mango
Java中的NavigableMap是一种可导航的Map,允许高效的导航到某个Key的前一个/后一个Key。NavigableMap接口继承了SortedMap接口,所以NavigableMap比SortedMap功能更强大。
NavigableMap提供了ceilingKey()方法,该方法可返回大于或等于指定键的最小键,如果不存在这样的键,则返回null。
K ceilingKey(K key)
方法参数:要查找的键。
方法返回值:大于或等于指定键的最小键,如果不存在这样的键,则返回null。
下面是一个使用ceilingKey()方法的示例。假设我们有一个NavigableMap,其中存储了某些数字及其对应的字母。我们想要找到大于或等于某个数字的最小数字及其对应的字母。代码如下:
NavigableMap<Integer, String> map = new TreeMap<>();
map.put(1, "A");
map.put(3, "B");
map.put(5, "C");
map.put(7, "D");
map.put(9, "E");
//查找数字2
Integer key = map.ceilingKey(2);
if (key != null) {
System.out.println("找到键:" + key + ",其对应的值为:" + map.get(key));
} else {
System.out.println("找不到指定键");
}
//查找数字4
key = map.ceilingKey(4);
if (key != null) {
System.out.println("找到键:" + key + ",其对应的值为:" + map.get(key));
} else {
System.out.println("找不到指定键");
}
//查找数字10
key = map.ceilingKey(10);
if (key != null) {
System.out.println("找到键:" + key + ",其对应的值为:" + map.get(key));
} else {
System.out.println("找不到指定键");
}
输出结果:
找到键:3,其对应的值为:B
找到键:5,其对应的值为:C
找不到指定键
ceilingKey()方法是NavigableMap接口中的一个非常有用的方法,可以很方便地确定大于或等于给定键的最小键。我们可以将其与其他NavigableMap方法一起使用,例如floorEntry()方法、ceilingEntry()方法、higherEntry()方法、lowerEntry()方法等,以便更好地管理Map中的数据。