Java.util.Collections 类

java.util.Collections.checkedMap() 方法返回指定映射的动态类型安全视图。任何插入其键或值类型错误的映射的尝试都将立即导致 ClassCastException。

语法

public static <K,V> Map<K,V> checkedMap(Map<K,V> m,
                                        Class<K> keyType,
                                        Class<V> valueType)
  • 1
  • 2
  • 3

这里,K和V是映射中键和值的类型。

参数

m 指定要返回动态类型安全视图的map。
keyType 指定m允许持有的密钥类型。
valueType 指定允许 m 保存的值的类型。

返回值

返回指定的动态类型安全视图

异常

无。

示例:

在下面的示例中,java .util.Collections.checkedMap() 方法返回给定map的动态类型安全视图。

import java.util.*;

public class MyClass {
  public static void main(String[] args) {
    //创建Map对象
    Map<Integer, String> MyMap = new HashMap<Integer, String>();

    //填充MyMap
    MyMap.put(101, "John");
    MyMap.put(102, "Marry");
    MyMap.put(103, "Kim");

    //打印map
    System.out.println("MyMap contains: " + MyMap); 

    //创建动态类型安全视图
    //map的
    Map NewMap = 
      Collections.checkedMap(MyMap, Integer.class, String.class);

    //打印map
    System.out.println("NewMap contains: " + NewMap); 
  }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24

上述代码的输出将是:

MyMap contains: {101=John, 102=Marry, 103=Kim}
NewMap contains: {101=John, 102=Marry, 103=Kim}
  • 1
  • 2