Java Collections checkedCollection()方法及示例

Java Collections checkedCollection()方法及示例

java.util.Collections类的 checkedCollection() 方法是用来返回指定集合的动态类型安全视图的。返回的集合不会将hashCode和equals操作传递给支持的集合,而是依赖于Object的equals和hashCode方法。这对于在后援集合是一个集合或一个列表的情况下保留这些操作的合同是必要的。如果指定的集合是可序列化的,那么返回的集合将是可序列化的。

因为null被认为是任何引用类型的值,所以只要支持的集合允许插入null元素,返回的集合就允许插入。

语法

public static  Collection 
checkedCollection(Collection c, Class type)

参数: 该方法需要两个参数

  • 要返回的动态类型安全视图的集合
  • c允许持有的元素的类型

返回类型: 该方法返回指定集合的动态 类型安全视图

例1 :

// Java program to demonstrate
// checkedCollection() method
// for String value
 
// Importing utility classes
import java.util.*;
 
// Main class
public class GFG {
 
    // Main driver method
    public static void main(String[] argv) throws Exception
    {
 
        // Try block to check for exceptions
        try {
 
            // Creating an empty ArrayList by
            // creating object of List of string type
            List<String> arlst = new ArrayList<String>();
 
            // Adding element to arrlist
            // using add() method
 
            // Custom input elements
            arlst.add("CSS");
            arlst.add("PHP");
            arlst.add("HTML");
            arlst.add("TajMahal");
 
            // Printing the ArrayList
            System.out.println("List: " + arlst);
 
            // Now create typesafe view of the collection by
            // creating object of Collection class of string
            // type
            Collection<String> tslst
                = Collections.checkedCollection(
                    arlst, String.class);
 
            // Printing the updated ArrayList
            // after applying checkedCollection() method
            System.out.println("Typesafe view of List: "
                               + tslst);
        }
 
        // Catch block to handle the exceptions
        catch (IllegalArgumentException e) {
 
            // Print message to be displayed on console
            // when exception occurs
            System.out.println("Exception thrown : " + e);
        }
    }
}

输出

List: [CSS, PHP, HTML, TajMahal]
Typesafe view of List: [CSS, PHP, HTML, TajMahal]

例2 :

// Java program to Illustrate checkedCollection() method
// of Collection class for an Integer value
 
// Importing classes
import java.util.*;
 
// Main class
public class GFG {
 
    // Main driver method
    public static void main(String[] argv) throws Exception
    {
 
        // Try block to check for exception
        try {
 
            // Creating an empty ArrayList of integer type
            // by declaring object of List
            List<Integer> arlst = new ArrayList<Integer>();
 
            // Adding element to ArrayList
            // using add() method
            arlst.add(20);
            arlst.add(30);
            arlst.add(40);
            arlst.add(50);
 
            // Printing the above ArrayList
            System.out.println("List: " + arlst);
 
            // now creating typesafe view of the collection
            // using checkedCollection() method
            Collection<Integer> tslst
                = Collections.checkedCollection(
                    arlst, Integer.class);
 
            // Printing the updated ArrayList
            // after above operation
            System.out.println("Typesafe view of List: "
                               + tslst);
        }
 
        // Catch block to handle exceptions
        catch (IllegalArgumentException e) {
 
            // Display message if exception occurs
            System.out.println("Exception thrown : " + e);
        }
    }
}

输出

List: [20, 30, 40, 50]
Typesafe view of List: [20, 30, 40, 50]

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程