
- Java.util 包類
- Java.util - 首頁
- Java.util - ArrayDeque
- Java.util - ArrayList
- Java.util - Arrays
- Java.util - BitSet
- Java.util - Calendar
- Java.util - Collections
- Java.util - Currency
- Java.util - Date
- Java.util - Dictionary
- Java.util - EnumMap
- Java.util - EnumSet
- Java.util - Formatter
- Java.util - GregorianCalendar
- Java.util - HashMap
- Java.util - HashSet
- Java.util - Hashtable
- Java.util - IdentityHashMap
- Java.util - LinkedHashMap
- Java.util - LinkedHashSet
- Java.util - LinkedList
- Java.util - ListResourceBundle
- Java.util - Locale
- Java.util - Observable
- Java.util - PriorityQueue
- Java.util - Properties
- Java.util - PropertyPermission
- Java.util - PropertyResourceBundle
- Java.util - Random
- Java.util - ResourceBundle
- Java.util - ResourceBundle.Control
- Java.util - Scanner
- Java.util - ServiceLoader
- Java.util - SimpleTimeZone
- Java.util - Stack
- Java.util - StringTokenizer
- Java.util - Timer
- Java.util - TimerTask
- Java.util - TimeZone
- Java.util - TreeMap
- Java.util - TreeSet
- Java.util - UUID
- Java.util - Vector
- Java.util - WeakHashMap
- Java.util 包擴充套件
- Java.util - 介面
- Java.util - 異常
- Java.util - 列舉
- Java.util 有用資源
- Java.util - 有用資源
- Java.util - 討論
Java TreeMap 類
簡介
Java TreeMap 類是基於紅黑樹實現的 Map 介面。以下是關於 TreeMap 的重要要點:
TreeMap 類保證 Map 將按升序鍵排序。
Map 根據鍵類的自然排序方法進行排序,或者根據在 Map 建立時提供的 Comparator 進行排序,這將取決於使用哪個建構函式。
類宣告
以下是 java.util.TreeMap 類的宣告:
public class TreeMap<K,V> extends AbstractMap<K,V> implements NavigableMap<K,V>, Cloneable, Serializable
引數
以下是 java.util.TreeMap 類的引數:
K - 這是此 Map 保持的鍵的型別。
V - 這是對映值的型別。
類建構函式
序號 | 建構函式和描述 |
---|---|
1 | TreeMap() 此建構函式使用其鍵的自然排序構建一個新的空 TreeMap。 |
2 | TreeMap(Comparator<? super K> comparator) 此建構函式根據給定的 Comparator 構建一個新的空 TreeMap。 |
3 | TreeMap(Map<? extends K,? extends V> m) 此建構函式構建一個新的 TreeMap,其中包含與給定 Map 相同的對映,並根據其鍵的自然排序進行排序。 |
4 | TreeMap(SortedMap<K,? extends V> m) 此建構函式構建一個新的 TreeMap,其中包含與指定的已排序 Map 相同的對映,並使用相同的排序。 |
類方法
序號 | 方法和描述 |
---|---|
1 | Map.Entry<K,V> ceilingEntry(K key)
此方法返回與大於或等於給定鍵的最小鍵關聯的鍵值對映,如果不存在此類鍵,則返回 null。 |
2 | K ceilingKey(K key)
此方法返回大於或等於給定鍵的最小鍵,如果不存在此類鍵,則返回 null。 |
3 | void clear()
此方法從此 Map 中刪除所有對映。 |
4 | Object clone()
此方法返回此 TreeMap 例項的淺複製。 |
5 | boolean containsKey(Object key)
此方法如果此 Map 包含指定鍵的對映,則返回 true。 |
6 | boolean containsValue(Object value)
此方法如果此 Map 將一個或多個鍵對映到指定值,則返回 true。 |
7 | NavigableSet<K> descendingKeySet()
此方法返回此 Map 中包含的鍵的反向順序 NavigableSet 檢視。 |
8 | NavigableMap<K,V> descendingMap()
此方法返回此 Map 中包含的對映的反向順序檢視。 |
9 | Set<Map.Entry<K,V>> entrySet()
此方法返回此 Map 中包含的對映的 Set 檢視。 |
10 | Map.Entry<K,V> firstEntry()
此方法返回與此 Map 中的最小鍵關聯的鍵值對映,如果 Map 為空,則返回 null。 |
11 | K firstKey()
此方法返回當前在此 Map 中的第一個(最小)鍵。 |
12 | Map.Entry<K,V> floorEntry(K key)
此方法返回與小於或等於給定鍵的最大鍵關聯的鍵值對映,如果不存在此類鍵,則返回 null。 |
13 | K floorKey(K key)
此方法返回小於或等於給定鍵的最大鍵,如果不存在此類鍵,則返回 null。 |
14 | V get(Object key)
此方法返回指定鍵對映到的值,如果此 Map 不包含該鍵的對映,則返回 null。 |
15 | SortedMap<K,V> headMap(K toKey)
此方法返回此 Map 的一部分的檢視,其鍵嚴格小於 toKey。 |
16 | Map.Entry<K,V> higherEntry(K key)
此方法返回與嚴格大於給定鍵的最小鍵關聯的鍵值對映,如果不存在此類鍵,則返回 null。 |
17 | K higherKey(K key)
此方法返回嚴格大於給定鍵的最小鍵,如果不存在此類鍵,則返回 null。 |
18 | Set<K> keySet()
此方法返回此 Map 中包含的鍵的 Set 檢視。 |
19 | Map.Entry<K,V> lastEntry()
此方法返回與此 Map 中的最大鍵關聯的鍵值對映,如果 Map 為空,則返回 null。 |
20 | K lastKey()
此方法返回當前在此 Map 中的最後一個(最大)鍵。 |
21 | Map.Entry<K,V> lowerEntry(K key)
此方法返回與嚴格小於給定鍵的最大鍵關聯的鍵值對映,如果不存在此類鍵,則返回 null。 |
22 | K lowerKey(K key)
此方法返回嚴格小於給定鍵的最大鍵,如果不存在此類鍵,則返回 null。 |
23 | NavigableSet<K> navigableKeySet()
此方法返回此 Map 中包含的鍵的 NavigableSet 檢視。 |
24 | Map.Entry<K,V> pollFirstEntry()
此方法刪除並返回與此 Map 中的最小鍵關聯的鍵值對映,如果 Map 為空,則返回 null。 |
25 | Map.Entry<K,V> pollLastEntry()
此方法刪除並返回與此 Map 中的最大鍵關聯的鍵值對映,如果 Map 為空,則返回 null。 |
26 | V put(K key, V value)
此方法將指定值與此 Map 中的指定鍵關聯。 |
27 | void putAll(Map<? extends K,? extends V> map)
此方法將指定 Map 中的所有映射覆制到此 Map。 |
28 | V remove(Object key)
如果存在,此方法從此 TreeMap 中刪除此鍵的對映。 |
29 | int size()
此方法返回此 Map 中鍵值對映的數量。 |
30 | SortedMap<K,V> subMap(K fromKey, K toKey)
此方法返回此 Map 的一部分的檢視,其鍵範圍從 fromKey(包含)到 toKey(不包含)。 |
31 | SortedMap<K,V> tailMap(K fromKey)
此方法返回此 Map 的一部分的檢視,其鍵大於或等於 fromKey。 |
32 | Collection<V> values()
此方法返回此 Map 中包含的值的 Collection 檢視。 |
繼承的方法
此類繼承以下類的 method:
- java.util.AbstractMap
- java.util.Object
- java.util.Map
從 TreeMap 中新增和獲取值的示例
以下示例顯示了 Java TreeMap get() 方法的使用,用於獲取 Map 中與給定鍵關聯的值。我們建立了一個 Integer、Integer 的 TreeMap 物件。然後添加了一些條目,並使用 get() 列印給定鍵的值。
package com.tutorialspoint; import java.util.TreeMap; public class TreeMapDemo { public static void main(String[] args) { // creating tree map TreeMap<Integer, Integer> treemap = new TreeMap<>(); // populating tree map treemap.put(2, 2); treemap.put(1, 1); treemap.put(3, 3); treemap.put(6, 6); treemap.put(5, 5); System.out.println("Checking value for key 3"); System.out.println("Value is: "+ treemap.get(3)); } }
讓我們編譯並執行以上程式,這將產生以下結果。
Checking value for key 3 Value is: three