zoukankan      html  css  js  c++  java
  • 泛型类中无法实例化泛型数组和unchecked cast的解决办法

    资料:

    Type safety: Unchecked cast

     

     

    As the messages above indicate, the List cannot be differentiated between a List<Object> and a List<String> or List<Integer>.

    I've solved this error message for a similar problem:

    List<String> strList = (List<String>) someFunction();
    String s = strList.get(0);
    

    with the following:

    List<?> strList = (List<?>) someFunction();
    String s = (String) strList.get(0);
    

    Explanation: The first type conversion verifies that the object is a List without caring about the types held within (since we cannot verify the internal types at the List level). The second conversion is now required because the compiler only knows the List contains some sort of objects. This verifies the type of each object in the List as it is accessed.

     

    JDK中也是类中存Object数组,取元素的时候强转元素的类型,而不是将数组强转

    PriorityQueue

     

  • 相关阅读:
    开涛spring3(6.5)
    开涛spring3(6.4)
    开涛spring3(6.3)
    开涛spring3(6.2)
    开涛spring3(6.1)
    开涛spring3(5.4)
    开涛spring3(5.3)
    开涛spring3(5.1&5.2)
    开涛spring3(4.4)
    开涛spring3(4.3)
  • 原文地址:https://www.cnblogs.com/GY8023/p/13859178.html
Copyright © 2011-2022 走看看