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]
廣告