Java SortedMap subMap()方法

Java SortedMap subMap()方法

Java中SortedMap接口 的subMap()方法用于返回该地图中键值范围从fromKey(包括)到toKey(包括)的部分的视图。

  • 该方法返回的地图由该地图支持,因此返回的地图的变化会反映在该地图中,反之亦然。
  • 这个方法返回的地图支持这个地图支持的所有可选的地图操作。

注意 :如果试图插入一个超出其范围的键,由该方法返回的地图将抛出一个IllegalArgumentException。

语法:

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

其中,K是这个Set所维护的键的类型,V是与该键相关的值的类型。

参数 :该函数接受两个参数fromKey和toKey,分别代表返回的地图中键的低端点(包括)和高端点(不包括)。

返回值 : 它返回该地图中键值范围从fromKey到toKey的部分的视图。

异常

  • ClassCastException : 如果参数fromKey与这个地图的比较器不兼容(或者,如果地图没有比较器,如果fromKey没有实现可比较)。
  • NullPointerException : 如果参数fromKey是空的,而这个地图不允许空键。
  • IllegalArgumentException : 如果这个地图本身有一个限制性的范围,而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)

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程