Java TreeMap 查找小于目标值的最大值:示例代码详解
在Java中,Map接口的实现类HashMap并不能保证元素的顺序。如果你想要创建一个有序的Map,可以使用TreeMap类。
下面是使用TreeMap类来解决你的问题的示例代码:
import java.util.TreeMap;
import java.util.Map;
public class Main {
public static void main(String[] args) {
// 创建一个有序的TreeMap
TreeMap<Integer, String> map = new TreeMap<>();
// 添加元素到Map
map.put(1, 'A');
map.put(10, 'B');
map.put(14, 'C');
map.put(18, 'D');
map.put(22, 'E');
map.put(26, 'F');
map.put(30, 'G');
map.put(35, 'H');
map.put(39, 'I');
// 查找小于给定数字的最大值
int target = 11;
Map.Entry<Integer, String> entry = map.floorEntry(target);
if (entry != null) {
System.out.println('小于' + target + '的最大值为:' + entry);
} else {
System.out.println('没有小于' + target + '的值');
}
}
}
在这个示例代码中,首先创建了一个有序的TreeMap,并添加了一些键值对。然后使用floorEntry方法来查找小于给定数字的最大值。最后,根据返回的Map.Entry对象判断是否找到了最大值,并打印结果。
注意:在这个示例中,使用了floorEntry方法来查找小于给定数字的最大值。如果你想要查找小于或等于给定数字的最大值,可以使用ceilingEntry方法。
原文地址: https://www.cveoy.top/t/topic/qevG 著作权归作者所有。请勿转载和采集!