Java SortedMap tailMap()方法
Java中SortedMap接口 的tailMap()方法用于返回该地图中键值大于或等于fromKey的部分的视图。
- 该方法返回的地图由该地图支持,因此返回的地图的变化会反映在该地图中,反之亦然。
- 这个方法返回的地图支持这个地图支持的所有可选的地图操作。
注意 :如果试图插入一个超出其范围的键,由该方法返回的地图将抛出一个IllegalArgumentException。
语法:
SortedMap<K, V> tailMap(K fromKey)
其中,K是这个Set所维护的键的类型,V是与该键相关的值的类型。
参数 :这个函数接受一个参数fromKey,它代表返回的地图中键的高终点(排他性)。
返回值 : 它返回该地图中键值严格大于或等于fromKey的部分的视图。
异常
- 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 greater
// than or equal to 2
System.out.print("Last Key in the map is : "
+ mp.tailMap(2));
}
}
输出。
Last Key in the map is : {2=Two, 3=Three, 4=Four, 5=Five}
示例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 greater
// than or equal to
System.out.print("Last Key in the map is : "
+ mp.tailMap("D"));
}
}
输出。
Last Key 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#tailMap(K)