Java.util.TreeSet 类

java.util.TreeSet.tailSet() 方法返回此集合中元素大于的部分的视图或等于 fromElement。返回的集合受此集合支持,因此返回集合中的更改会反映在此集合中,反之亦然。

语法

public SortedSet<E> tailSet(E toElement)

这里,E 是元素的类型由容器维护。

参数

toElement 指定元素的低端点(含)返回集合。

返回值

返回此集合中元素大于或等于 fromElement 的部分的视图。

异常

  • 抛出ClassCastException,如果toElement与此集合的比较器不兼容(或者,如果集合没有比较器,如果toElement不兼容)未实现 Comparable)。
  • 如果 toElement 为 null 并且此集合使用自然排序,或者其比较器不允许 null 元素,则抛出 NullPointerException
  • 抛出IllegalArgumentException,如果此集合本身有一个受限制的范围,并且 toElement 位于该范围的边界之外。

示例:

在下面的示例中,java.util.TreeSet.tailSet() 方法返回给定集合中包含大于或等于指定值的元素的部分的视图。

import java.util.*;

public class MyClass {
  public static void main(String[] args) {
    //创建树集
    TreeSet<Integer> Set1 = new TreeSet<Integer>();
    TreeSet<Integer> Set2 = new TreeSet<Integer>();

    //填充Set1
    Set1.add(10);
    Set1.add(20);
    Set1.add(30);
    Set1.add(40);
    Set1.add(50);

    //打印Set1
    System.out.println("Set1 contains: " + Set1); 

    //创建尾部集
    //(限制值到30)
    Set2 = (TreeSet<Integer>)Set1.tailSet(30); 

    //打印Set2
    System.out.println("Set2 contains: " + Set2);     
  }
}

上述代码的输出将是:

Set1 contains: [10, 20, 30, 40, 50]
Set2 contains: [30, 40, 50]