java.util.TreeSet.subSet()


描述

subSet(E fromElement,boolean fromInclusive,E toElement,boolean toInclusive)方法用来返回这个集合,其元素范围从fromElement到toElement的部分的图。如果fromElement和toElement相等,则返回的集合为空,除非fromExclusive和toEx​​clusive都为真。

声明

以下是java.util.TreeSet.subSet()方法的声明。

public NavigableSet<E> subSet(E fromElement,boolean fromInclusive,E toElement,boolean toInclusive)

参数

fromElement - 这是返回集的低端点。

fromInclusive - 如果要将低端点包含在返回的视图中,则为true。

toElement - 这是返回集的高端点。

toInclusive - 如果要将高端点包含在返回的视图中,则为true。

返回值

方法调用返回此set的部分视图,其元素范围从fromElement(包括)到toElement(不包括)。

异常

ClassCastException - 如果使用此set的比较器无法将fromElement和toElement相互比较,则抛出此异常。

NullPointerException - 如果fromElement或toElement为null并且此set使用自然排序,或者其比较器不允许null元素,则抛出此异常。

IllegalArgumentException - 如果fromElement大于toElement,则抛出此异常; 或者如果此集合本身具有受限范围,并且fromElement或toElement位于范围的边界之外。

实例

以下示例显示了java.util.TreeSet.subSet()方法的用法。

package com.tutorialspoint;

import java.util.TreeSet;
import java.util.Iterator;

public class TreeSetDemo {
   public static void main(String[] args) {

      // creating a TreeSet
      TreeSet <Integer>treeadd = new TreeSet<Integer>();
      TreeSet <Integer>treesubset = new TreeSet<Integer>();

      // adding in the tree set
      treeadd.add(1);
      treeadd.add(2);
      treeadd.add(3);
      treeadd.add(4);
      treeadd.add(5);
      treeadd.add(6);
      treeadd.add(7);
      treeadd.add(8);

      // creating subset
      treesubset = (TreeSet)treeadd.subSet(3, true, 7, true);

      // create iterator
      Iterator iterator;
      iterator = treesubset.iterator();

      // displaying the Tree set data
      System.out.println("Tree subset data: ");     

      while (iterator.hasNext()) {
         System.out.println(iterator.next() + " ");
      }
   }    
}

让我们编译并运行上面的程序,这将产生以下结果。

Tree subset data:
3
4
5
6
7