在下面非常简单的代码中:
public static void test(Map<Externalizable, Externalizable> t){
for(Map.Entry<Externalizable, Externalizable> e : t.entrySet()){
//The next line causes unchecked cast warning
Object o = new AbstractMap.SimpleImmutableEntry(e.getKey(), e.getValue());
}
}
为什么? AbstractMap.SimpleImmutableMap
是一个泛型类。怎么了?
最佳答案
因为您正在使用 raw type 。相反,请使用 diamond operator
Object o = new AbstractMap.SimpleImmutableEntry<>(e.getKey(), e.getValue());
关于java - 为什么创建 Simple ImmutableMap 会导致未经检查的强制转换警告?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39387254/