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