位置:首頁 > Java技術 > Java.util包 > java.util.TreeMap.subMap()方法實例

java.util.TreeMap.subMap()方法實例

subMap(K fromKey, boolean fromInclusive, K toKey, boolean toInclusive) 方法用於返回此映射從fromKey到toKey範圍的鍵值的部分視圖。如果fromKey和toKey相等,則返回映射為空,除非fromExclusive和toExclusive都是true。返回的映射受此映射支持,因此改變返回映射反映在此映射中,反之亦然。

聲明

以下是java.util.TreeMap.subMap()方法的聲明。

public NavigableMap<K,V> subMap(K fromKey,
                                boolean fromInclusive,
                                K toKey,
                                boolean toInclusive)

參數

  • fromKey-- 返回映射中鍵的低端點。

  • fromInclusive-- true如果低端點要包含在返回的視圖。

  • toKey-- 返回映射中鍵的高端點。

  • toInclusive-- 這為true如果高端點要包含在返回的視圖。

返回值

該方法調用返回此映射從fromKey到toKey的範圍的鍵值的部分視圖。

異常

  • ClassCastException-- 如果fromKey和toKey不能相比的另一個使用此映射的比較,拋出此異常。

  • NullPointerException-- 該異常被拋出,如果fromKey或toKey為null,並且此映射使用自然順序,或者其比較器不允許使用null鍵。

  • IllegalArgumentException-- 該異常被拋出,如果fromKey大於toKey; 如果此映射本身有範圍限製,並且fromKey或toKey位於範圍的邊界之外。

例子

下麵的示例演示java.util.TreeMap.subMap()方法的使用

package com.yiibai;

import java.util.*;

public class TreeMapDemo {
   public static void main(String[] args) {
      // creating maps 
      TreeMap<Integer, String> treemap = new TreeMap<Integer, String>();
      NavigableMap<Integer, String> treemapincl = new TreeMap<Integer, String>();
            
      // populating tree map
      treemap.put(2, "two");
      treemap.put(1, "one");
      treemap.put(3, "three");
      treemap.put(6, "six");
      treemap.put(5, "five");      
      
      System.out.println("Getting a portion of the map");
      treemapincl=treemap.subMap(1, true, 3, true);
      System.out.println("Sub map values: "+treemapincl);      
   }    
}

現在編譯和運行上麵的代碼示例,將產生以下結果。

Getting a portion of the map
Sub map values: {1=one, 2=two, 3=three}