当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java SortedMap subMap()用法及代码示例


Java中SortedMap接口的subMap()方法用于返回此映射部分的视图,其键范围从fromKey(包括)到toKey(不包括)。

  • 此方法返回的Map由该Map支持,因此返回的Map中的更改会反映在该Map中,反之亦然。
  • 此方法返回的Map支持该Map支持的所有可选Map操作。

注意:如果尝试插入超出其范围的键,则此方法返回的映射将抛出IllegalArgumentException。

用法


SortedMap<K, V> subMap(K fromKey,
                      K toKey)

其中,K是此Set维护的键的类型,V是与该键关联的值的类型。

参数:此函数接受两个参数fromKey和toKey,分别表示返回映射中键的低端点(包括端点)和高端点(不包括端点)。

返回值:返回此Map部分的视图,其键范围从fromKey到toKey。

异常

  • ClassCastException:如果参数fromKey与该Map的比较器不兼容(或者,如果Map没有比较器,则fromKey没有实现Comparable)。
  • NullPointerException :如果参数fromKey为null,并且此映射不允许使用null键。
  • IllegalArgumentException:如果此Map本身具有限制范围,并且fromKey位于范围的边界之外

以下示例程序旨在说明上述方法:

程序1

// A Java program to demonstrate 
// working of SortedSet 
import java.util.*; 
  
public class Main { 
    public static void main(String[] args) 
    { 
        // Create a TreeSet and inserting elements 
        SortedMap<Integer, String> mp = new TreeMap<>(); 
  
        // Adding Element to SortedSet 
        mp.put(1, "One"); 
        mp.put(2, "Two"); 
        mp.put(3, "Three"); 
        mp.put(4, "Four"); 
        mp.put(5, "Five"); 
  
        // Returning the key ranging 
        // between 2 and 5 
        System.out.print("Elements in range from 2 to 5 in the map is : "
                         + mp.subMap(2, 5)); 
    } 
}
输出:
Elements in range from 2 to 5 in the map is : {2=Two, 3=Three, 4=Four}

程序2

// A Java program to demonstrate 
// working of SortedSet 
import java.util.*; 
  
public class Main { 
    public static void main(String[] args) 
    { 
        // Create a TreeSet and inserting elements 
        SortedMap<String, String> mp = new TreeMap<>(); 
  
        // Adding Element to SortedSet 
        mp.put("One", "Geeks"); 
        mp.put("Two", "For"); 
        mp.put("Three", "Geeks"); 
        mp.put("Four", "Code"); 
        mp.put("Five", "It"); 
  
        // Returning the key range between D and Z 
        System.out.print("Key in range from D to Z in the map is : "
                         + mp.subMap("D", "Z")); 
    } 
}
输出:
Key in range from D to Z in the map is : {Five=It, Four=Code, One=Geeks, Three=Geeks, Two=For}

参考: https://docs.oracle.com/javase/10/docs/api/java/util/SortedMap.html#subMap(K)



相关用法


注:本文由纯净天空筛选整理自barykrg大神的英文原创作品 SortedMap subMap() method in Java。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。