subSet(E fromElement,boolean fromInclusive,E toElement,boolean toInclusive)%uA0方法用于返回这个集合,其元素范围从fromElement到toElement的部分视图。如果fromElement和toElement相等,则返回的集合是空的,除非fromExclusive和toExclusive都是true。
声明
以下是java.util.TreeSet.subSet()方法的声明。
public NavigableSet<E> subSet(E fromElement,boolean fromInclusive,E toElement,boolean toInclusive)
参数
-
fromElement--这是返回集合的低端点。
-
fromInclusive--这为true,如果低端点要包含在返回的视图。
-
toElement--这是返回集合的高端点。
-
toInclusive--这为true,如果高端点要包含在返回的视图。
返回值
该方法调用返回这个集合,其元素范围从fromElement(包括)到toElement(不包括)的部分视图。
异常
-
ClassCastException--如果fromElement和toElement不能相比的另一个使用此set的比较,这个异常被抛出。
-
NullPointerException--这个异常被抛出,如果fromElement或toElement为null,并且此set使用自然顺序,或者其比较器不允许使用null元素。
-
IllegalArgumentException--这个异常被抛出,如果fromElement大于toElement如果此set本身有范围限制,并且fromElement或toElement位于范围的边界之外。
例子
下面的例子显示java.util.TreeSet.subSet()方法的使用。
package com.yiibai 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