- 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 TreeSet 類
介紹
Java TreeSet 類實現了 Set 介面。以下是關於 TreeSet 的重要幾點:
TreeSet 類保證對映表將按升序排列,並由 TreeMap 支援。
對映表根據鍵類的自然排序方法進行排序,或者根據在集合建立時提供的 Comparator 進行排序,這取決於使用哪個建構函式。
為了使樹正常工作,排序必須是全序的。
類宣告
以下是 java.util.TreeSet 類的宣告:
public class TreeSet<E> extends AbstractSet<E> implements NavigableSet<E>, Cloneable, Serializable
引數
以下是 java.util.TreeSet 類的引數:
E - 此集合維護的元素型別。
類建構函式
| 序號 | 建構函式及描述 |
|---|---|
| 1 | TreeSet() 此建構函式構造一個新的空樹集,根據其元素的自然順序進行排序。 |
| 2 | TreeSet(Collection<? extends E> c) 此建構函式構造一個新的樹集,其中包含指定集合中的元素,根據其元素的自然順序進行排序。 |
| 3 | TreeSet(Comparator<? super E> comparator) 此建構函式構造一個新的空樹集,根據指定的比較器進行排序。 |
| 4 | TreeSet(SortedSet<E> s) 此建構函式構造一個新的樹集,其中包含與指定排序集相同的元素並使用相同的排序。 |
類方法
| 序號 | 方法及描述 |
|---|---|
| 1 | boolean add(E e)
如果指定的元素不存在,此方法會將該元素新增到此集合中。 |
| 2 | boolean addAll(Collection<? extends E> c)
此方法將指定集合中的所有元素新增到此集合中。 |
| 3 | E ceiling(E e)
此方法返回此集合中大於或等於給定元素的最小元素,如果不存在這樣的元素,則返回 null。 |
| 4 | void clear()
此方法從此集合中刪除所有元素。 |
| 5 | Object clone()
此方法返回此 TreeSet 例項的淺表副本。 |
| 6 | boolean contains(Object o)
如果此集合包含指定的元素,則此方法返回 true。 |
| 7 | Iterator<E> descendingIterator()
此方法返回此集合中元素的迭代器,其順序為降序。 |
| 8 | NavigableSet<E> descendingSet()
此方法返回此集合中所包含元素的逆序檢視。 |
| 9 | E first()
此方法返回當前此集合中的第一個(最小)元素。 |
| 10 | E floor(E e)
此方法返回此集合中小於或等於給定元素的最大元素,如果不存在這樣的元素,則返回 null。 |
| 11 | SortedSet<E> headSet(E toElement)
此方法返回此集合的檢視,其元素嚴格小於 toElement。 |
| 12 | E higher(E e)
此方法返回此集合中嚴格大於給定元素的最小元素,如果不存在這樣的元素,則返回 null。 |
| 13 | boolean isEmpty()
如果此集合不包含任何元素,則此方法返回 true。 |
| 14 | Iterator<E> iterator()
此方法返回此集合中元素的迭代器,其順序為升序。 |
| 15 | E last()
此方法返回當前此集合中的最後一個(最大)元素。 |
| 16 | E lower(E e)
此方法返回此集合中嚴格小於給定元素的最大元素,如果不存在這樣的元素,則返回 null。 |
| 17 | E pollFirst()
此方法檢索並刪除第一個(最小)元素,如果此集合為空,則返回 null。 |
| 18 | E pollLast()
此方法檢索並刪除最後一個(最大)元素,如果此集合為空,則返回 null。 |
| 19 | boolean remove(Object o)
如果存在,此方法從此集合中刪除指定的元素。 |
| 20 | int size()
此方法返回此集合中元素的數量(其基數)。 |
| 21 | Spliterator<E> spliterator()
在此集合中的元素上建立延遲繫結和快速失敗的 Spliterator。 |
| 22 | SortedSet<E> subSet(E fromElement, E toElement)
此方法返回此集合的檢視,其元素範圍從 fromElement(包含)到 toElement(不包含)。 |
| 23 | SortedSet<E> tailSet(E fromElement)
此方法返回此集合的檢視,其元素大於或等於 fromElement。 |
繼承的方法
此類繼承自以下類的方法:
- java.util.AbstractSet
- java.util.AbstractCollection
- java.util.Object
- java.util.Set
向 TreeSet 新增條目示例
以下示例演示了 Java TreeSet add() 方法的使用,用於向 treeset 新增條目。我們建立了一個 Integer 型別的 TreeSet 物件。然後使用 add() 方法添加了一些條目,並列印 treeset 物件以檢查其內容。
package com.tutorialspoint;
import java.util.TreeSet;
public class TreeSetDemo {
public static void main(String[] args) {
// creating a TreeSet
TreeSet<Integer> treeset = new TreeSet<>();
// adding in the tree set
treeset.add(12);
treeset.add(13);
treeset.add(14);
treeset.add(15);
// displaying the Tree set data
System.out.print("Tree set : " + treeset);
}
}
輸出
讓我們編譯並執行上述程式,這將產生以下結果。
Tree set : [12, 13, 14, 15]