treeset常用方法

treeset常用方法

TreeSet 是 Java 集合框架中的一个类,它实现了 NavigableSet 接口,并且基于红黑树(Red-Black Tree)数据结构。TreeSet 中的元素是唯一的,并且按照自然顺序或提供的比较器进行排序。以下是一些常用的 TreeSet 方法:

构造方法

  1. TreeSet()

    • 创建一个空的 TreeSet,使用元素的自然顺序进行排序。
    TreeSet<Integer> treeSet = new TreeSet<>();
  2. TreeSet(Collection<? extends E> c)

    • 使用指定集合中的元素创建一个 TreeSet,使用元素的自然顺序进行排序。
    Collection<Integer> collection = Arrays.asList(1, 3, 5, 7); TreeSet<Integer> treeSet = new TreeSet<>(collection);
  3. TreeSet(Comparator<? super E> comparator)

    • 创建一个空的 TreeSet,并根据指定的比较器进行排序。
    Comparator<Integer> comparator = (a, b) -> b - a; // 降序 TreeSet<Integer> treeSet = new TreeSet<>(comparator);

常用方法

  1. boolean add(E e)

    • 将指定的元素添加到 TreeSet 中(如果该元素尚未存在)。
    treeSet.add(4);
  2. void clear()

    • 从 TreeSet 中移除所有元素。
    treeSet.clear();
  3. Object first()

    • 返回 TreeSet 中的第一个(最低)元素。
    Integer firstElement = treeSet.first();
  4. Object last()

    • 返回 TreeSet 中的最后一个(最高)元素。
    Integer lastElement = treeSet.last();
  5. boolean contains(Object o)

    • 如果 TreeSet 包含指定的元素,则返回 true。
    boolean containsFour = treeSet.contains(4);
  6. Iterator iterator()

    • 返回在 TreeSet 中的元素上进行迭代的迭代器,按升序排列。
    Iterator<Integer> iterator = treeSet.iterator(); while (iterator.hasNext()) { System.out.println(iterator.next()); }
  7. boolean isEmpty()

    • 如果 TreeSet 不包含任何元素,则返回 true。
    boolean isEmptyTreeSet = treeSet.isEmpty();
  8. SizeInt size()

    • 返回 TreeSet 中的元素数量。
    int sizeOfTreeSet = treeSet.size();
  9. SortedSet subSet(E fromElement, E toElement)

    • 返回此 TreeSet 的部分视图,其元素范围从 fromElement(包括)到 toElement(不包括)。
    SortedSet<Integer> subset = treeSet.subSet(2, 6);
  10. SortedSet headSet(E toElement)

    • 返回此 TreeSet 的部分视图,其元素严格小于 toElement。
    SortedSet<Integer> headset = treeSet.headSet(5);
  11. SortedSet tailSet(E fromElement)

    • 返回此 TreeSet 的部分视图,其元素大于或等于 fromElement。
    SortedSet<Integer> tailset = treeSet.tailSet(3);
  12. E pollFirst()

    • 获取并移除此 TreeSet 中的第一个(最低)元素;如果此 TreeSet 为空,则返回 null。
    Integer removedFirst = treeSet.pollFirst();
  13. E pollLast()

    • 获取并移除此 TreeSet 中的最后一个(最高)元素;如果此 TreeSet 为空,则返回 null。
    Integer removedLast = treeSet.pollLast();
  14. Comparator<? super E> comparator()

    • 返回用于对此 TreeSet 中的元素进行排序的比较器;如果此 TreeSet 使用元素的自然顺序进行排序,则返回 null。
    Comparator<? super Integer> comparator = treeSet.comparator();

这些方法提供了对 TreeSet 进行操作的各种方式,包括添加、删除、查找和遍历元素等。通过这些方法,你可以高效地管理和访问存储在 TreeSet 中的数据。