Java 集合 checkedMap() 方法



描述

checkedMap(Map<, V>, Class<K>, Class<V>) 方法用于获取指定映射的动态类型安全视图。

声明

以下是 java.util.Collections.checkedMap() 方法的声明。

public static <K,V> Map<K,V> checkedMap(Map<K,V> m,Class<K> keyType,Class<V> valueType)

参数

  • m - 这是要返回其动态类型安全视图的映射。

  • keyType - 这是 m 允许保存的键的类型。

  • valueType - 这是 m 允许保存的值的类型。

返回值

方法调用返回指定映射的动态类型安全视图。

异常

从字符串、整数对映射获取类型安全映射示例

以下示例演示了如何使用 Java 集合 checkedMap(Map,Class,Class) 方法获取字符串和整数映射的类型安全视图。我们创建了一个包含一些字符串和整数的映射对象。使用 checkedMap(Map, String, Integer) 方法,我们获取了一个字符串、整数映射,然后打印它。

package com.tutorialspoint;

import java.util.Collections;
import java.util.HashMap;
import java.util.Map;

public class CollectionsDemo {
   public static void main(String args[]) {
   
      // create map     
      HashMap<String,Integer> hmap = new HashMap<>();

      // populate the map
      hmap.put("1", 1);
      hmap.put("2", 2);
      hmap.put("3", 3);
      hmap.put("4", 4);

      // get typesafe view of the map
      Map<String,Integer> tsmap;
      tsmap = Collections.checkedMap(hmap,String.class,Integer.class);     

      System.out.println("Dynamically typesafe view of the map: "+tsmap);
   }    
}

输出

让我们编译并运行上述程序,这将产生以下结果。

Dynamically typesafe view of the map: {1=1, 2=2, 3=3, 4=4}

从字符串、字符串对映射获取类型安全映射示例

以下示例演示了如何使用 Java 集合 checkedMap(Map,Class,Class) 方法获取字符串和字符串映射的类型安全视图。我们创建了一个包含一些字符串和字符串的映射对象。使用 checkedMap(Map, String, String) 方法,我们获取了一个字符串、字符串映射,然后打印它。

package com.tutorialspoint;

import java.util.Collections;
import java.util.HashMap;
import java.util.Map;

public class CollectionsDemo {
   public static void main(String args[]) {
   
      // create map     
      HashMap<String,String> hmap = new HashMap<>();

      // populate the map
      hmap.put("1", "A");
      hmap.put("2", "B");
      hmap.put("3", "C");
      hmap.put("4", "D");

      // get typesafe view of the map
      Map<String,String> tsmap;
      tsmap = Collections.checkedMap(hmap,String.class,String.class);     

      System.out.println("Dynamically typesafe view of the map: "+tsmap);
   }    
}

输出

让我们编译并运行上述程序,这将产生以下结果。

Dynamically typesafe view of the map: {1=A, 2=B, 3=C, 4=D}

从字符串、对象对映射获取类型安全映射示例

以下示例演示了如何使用 Java 集合 checkedCollection(Map,Class) 方法获取学生对象映射的类型安全视图。我们创建了一个包含一些学生对象的映射,并打印了原始映射。使用 checkedCollection(Map, Student) 方法,我们获取了一个字符串映射,然后打印它。

package com.tutorialspoint;

import java.util.Collections;
import java.util.HashMap;
import java.util.Map;

public class CollectionsDemo {

   public static void main(String[] args) {
   
      // create map     
      HashMap<String,Student> hmap = new HashMap<>();

      // populate the map
      hmap.put("1", new Student(1, "Julie"));
      hmap.put("2", new Student(2, "Robert"));
      hmap.put("3", new Student(3, "Adam"));
      hmap.put("4", new Student(4, "Jene"));

      // get typesafe view of the map
      Map<String,Student> tsmap;
      tsmap = Collections.checkedMap(hmap,String.class,Student.class);     

      System.out.println("Dynamically typesafe view of the map: "+tsmap);
   }
}
class Student {
   int rollNo;
   String name;

   Student(int rollNo, String name){
      this.rollNo = rollNo;
      this.name = name;
   }

   @Override
   public String toString() {
      return "[ " + this.rollNo + ", " + this.name + " ]";
   }
}

输出

让我们编译并运行上述程序,这将产生以下结果。

Dynamically typesafe view of the map: {1=[ 1, Julie ], 2=[ 2, Robert ], 3=[ 3, Adam ], 4=[ 4, Jene ]}
java_util_collections.htm
广告