Java中的java.util.TreeMap.subMap(K startKey,K endKey)方法用于返回由参数中指定范围的键定义的映射的部分或部分。在一个或另一个map中所做的任何更改都将反映其他map中的更改。
句法:
Tree_Map.subMap(K startKey,K endKey)
参数:该方法采用Key类型的两个参数:
startKey:这是指map的起点或下点,包括要考虑的点。
endKey:这是指map的端点或较高端,不包括要考虑的点。
注意:如果startKey等于endKey,则返回Null Map。
返回值:该方法返回另一个包含指定范围内map的部分或部分的map。
异常:该方法抛出三种类型的异常:
ClassCastException:如果方法中提到的参数无法与此映射的键进行比较,则抛出此异常。
NullPointerException:如果其中一个参数为null类型且map不接受任何null值,则抛出此异常。
IllegalArgumentException:如果提到的参数超出范围或低端大于高端,则抛出此异常。
下面的程序说明了java.util.TreeMap.subMap()方法的工作原理
程序1:
// Java code to illustrate the subMap() method
import java.util.*;
public class Tree_Map_Demo {
public static void main(String[] args)
{
// Creating an empty TreeMap
TreeMap tree_map =
new TreeMap();
// Mapping string values to int keys
tree_map.put(10, "Geeks");
tree_map.put(15, "4");
tree_map.put(20, "Geeks");
tree_map.put(25, "Welcomes");
tree_map.put(30, "You");
// Displaying the TreeMap
System.out.println("The original map is: "
+ tree_map);
// Displaying the submap
System.out.println("The subMap is " +
tree_map.subMap(15, 30));
}
}
输出:
The original map is: {10=Geeks, 15=4, 20=Geeks, 25=Welcomes, 30=You}
The subMap is {15=4, 20=Geeks, 25=Welcomes}
程序2:
// Java code to illustrate the subMap() method
import java.util.*;
public class Tree_Map_Demo {
public static void main(String[] args)
{
// Creating an empty TreeMap
TreeMap tree_map =
new TreeMap();
// Mapping int values to string keys
tree_map.put("Geeks", 10);
tree_map.put("4", 15);
tree_map.put("Geeks", 20);
tree_map.put("Welcomes", 25);
tree_map.put("You", 30);
// Displaying the TreeMap
System.out.println("The original map is: "
+ tree_map);
// Displaying the subMap
System.out.println("The subMap is " +
tree_map.subMap("Geeks", "Geeks"));
}
}
输出:
The original map is: {4=15, Geeks=20, Welcomes=25, You=30}
The subMap is {}