Java 获取TreeMap中大于或小于指定值的键、值或实体
TreeMap 是Java提供的一个实现了 Map 接口的类。它是一个键值对的集合,TreeMap中的键值对按照键值的顺序进行排序。在TreeMap中,一个 实体 被定义为一个键值对。在本文中,我们将详细介绍如何获取TreeMap中大于或小于指定值的键值对或实体。
现在,我们将详细介绍在本文中使用的一些内置方法及其功能。
所使用的方法
higherKey() − 该方法用于返回大于给定键的最小键,如果不存在则返回null。
mapObject.higherKey(Object key)
higherEntry() − 该方法返回一个键值对,其最小键严格大于给定的键(如果存在),否则返回null。
mapObject.higherEntry(Object key)
lowerKey() − 此方法用于返回严格小于给定键的最大键,否则将返回null。
mapObject.lowerKey(Object key)
lowerEntry() − 此方法返回一个键-值对,其最大的键严格小于给定的键,否则将返回null。
mapObject.lowerEntry(Object key)
ceilingEntry() - 此方法返回一个键值对,其最小键大于或等于给定键,否则将返回null。
mapObject.ceilingEntry(Object key)
floorEntry() - 该方法返回一个键-值对,其较大的键小于或等于给定的键,否则将返回null。
mapObject.floorEntry(Object key)
get() − 此方法用于获取与键关联的值,否则将返回null。
mapObject.get(Object key)
put() − 此方法用于向TreeMap添加一个键值对。它接受两个参数:一个键和一个值。
mapObject.get(Object key, Object value)
现在,我们详细讨论在Java中使用不同的方法来查找Tree Map Key、Value或Entry大于或小于指定值的方法,使用不同的示例。
方法1:使用higherKey()、lowerKey()、higherEntry()和lowerEntry()
- 创建一个TreeMap对象,并使用put()方法添加key和value。
-
使用higherKey()和higherEntry()打印大于给定key的最小key、value和Entry。
-
使用lowerKey()和lowerEntry()打印小于给定key的最大key、value和Entry。
示例
在这个示例中,我们将使用Java提供的不同内置方法higherKey()、lowerKey()、higherEntry()和lowerEntry()来获取大于或小于指定值的Key、Value或Entry。
import java.util.*;
public class Main {
public static void main(String[] args) {
TreeMap<Integer, String> treeMap = new TreeMap<>();
treeMap.put(1, "A");
treeMap.put(2, "B");
treeMap.put(3, "C");
treeMap.put(4, "D");
System.out.println("Key greater than 3: " + treeMap.higherKey(3));
System.out.println("Value greater than 3: " + treeMap.get(treeMap.higherKey(3)));
System.out.println("Entry greater than 3: " + treeMap.higherEntry(3));
System.out.println("Key less than 3: " + treeMap.lowerKey(3));
System.out.println("Value less than 3: " + treeMap.get(treeMap.lowerKey(3)));
System.out.println("Entry less than 3: " + treeMap.lowerEntry(3));
}
}
输出
Key greater than 3: 4
Value greater than 3: D
Entry greater than 3: 4=D
Key less than 3: 2
Value less than 3: B
Entry less than 3: 2=B
方法2:使用ceilingEntry()和floorEntry()
- 创建一个TreeMap对象,并使用put()方法添加键和值。
-
使用higherKey()和ceilingEntry()打印大于给定键的最小键、值、Entry。
-
使用lowerKey()和floorEntry()打印小于给定键的最大键、值、Entry。
示例
在此示例中,我们将使用Java提供的不同内置方法ceilingEntry()和floorEntry()来获取大于或小于指定值的键、值或Entry。
import java.util.*;
public class Main {
public static void main(String[] args) {
TreeMap<Integer, String> treeMap = new TreeMap<>();
treeMap.put(1, "A");
treeMap.put(3, "C");
treeMap.put(4, "D");
System.out.println("Key greater than 3: " + treeMap.higherKey(3));
System.out.println("Value greater than 3: " + treeMap.get(treeMap.higherKey(3)));
System.out.println("Key less than 3: " + treeMap.lowerKey(3));
System.out.println("Value less than 3: " + treeMap.get(treeMap.lowerKey(3)));
System.out.println("Entry greater than 2: " + treeMap.ceilingEntry(2));
System.out.println("Entry less than 2: " + treeMap.floorEntry(2));
}
}
输出
Key greater than 3: 4
Value greater than 3: D
Key less than 3: 1
Value less than 3: A
Entry greater than 2: 3=C
Entry less than 2: 1=A
因此,本文讨论了寻找TreeMap中键、值或条目大于或小于指定值的不同方法。