位置:首頁 > Java技術 > Java.util包 > subSet(E fromElement,boolean fromInclusive,E toElement,boolean toInclusive)方法實例

subSet(E fromElement,boolean fromInclusive,E toElement,boolean toInclusive)方法實例

subSet(E fromElement,boolean fromInclusive,E toElement,boolean toInclusive) 方法用於返回這個集合,其元素範圍從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