Java程式:獲取TreeMap中大於或小於指定值的鍵、值或條目
一個TreeMap是Java提供的實現Map介面的類。它是一個鍵值對的集合,TreeMap中的鍵值對根據鍵值按排序順序儲存。一個條目(Entry)在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中的不同方法,透過不同的示例來查詢TreeMap中大於或小於指定值的鍵、值或條目。
方法一:使用higherKey()、lowerKey()、higherEntry()和lowerEntry()
建立一個TreeMap物件,並使用put()方法新增鍵值對。
使用higherKey()和higherEntry()列印大於給定鍵的最小鍵、值和條目。
使用lowerKey()和lowerEntry()列印小於給定鍵的最大鍵、值和條目。
示例
在這個例子中,我們將使用Java提供的不同的內建方法higherKey()、lowerKey()、higherEntry()、lowerEntry()來獲取大於或小於指定值的鍵、值或條目。
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
方法二:使用ceilingEntry()和floorEntry()
建立一個TreeMap物件,並使用put()方法新增鍵值對。
使用higherKey()和ceilingEntry()列印大於給定鍵的最小鍵、值和條目
使用lowerKey()和floorEntry()列印小於給定鍵的最大鍵、值和條目
示例
在這個例子中,我們將使用Java提供的不同的內建方法ceilingEntry()和floorEntry()來獲取大於或小於指定值的鍵、值或條目。
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中大於或小於指定值的鍵、值或條目的不同方法。