LinkedHashMap$项不能强制转换为java.util.LinkedHashMap
我将LinkedHashMap$项不能强制转换为java.util.LinkedHashMap,java,list,map,classcastexception,linkedhashmap,Java,List,Map,Classcastexception,Linkedhashmap,我将LinkedHashMap包装到一个列表中 List<LinkedHashMap<String, LinkedHashMap<Date, Double>>> list = new ArrayList(mainCodesMap.entrySet()); jvm抛出ClassCastException,表示: java.lang.ClassCastException: java.util.LinkedHashMap$Entry cannot be cast
LinkedHashMap
包装到一个列表中
List<LinkedHashMap<String, LinkedHashMap<Date, Double>>> list = new ArrayList(mainCodesMap.entrySet());
jvm抛出ClassCastException
,表示:
java.lang.ClassCastException: java.util.LinkedHashMap$Entry cannot be cast to java.util.LinkedHashMap
注意:
ArrayList
表示编译器将自动填写。它并不适用于所有上下文。我想我对某些事情感到困惑,因为我认为列表中的每个元素也是LinkedHashMap
值将返回LinkedHashMap的集合,而不是一个。entryRow.values()
返回集合,不是一个LinkedHashMap
…好的,伙计们,非常感谢我解决了这个问题。:)如果你们中有人能写下答案,我会接受的。实际上,我更改了几行,比如List=newarraylist(mainCodesMap.entrySet())代码>,所以我在列表中只有我想要的条目。然而,你所说的“它并非在所有情况下都有效”是什么意思。它是否依赖于Java版本?。谢谢你的回复
java.lang.ClassCastException: java.util.LinkedHashMap$Entry cannot be cast to java.util.LinkedHashMap
List<LinkedHashMap<String, LinkedHashMap<Date, Double>>> list = new ArrayList(mainCodesMap.entrySet());
List<LinkedHashMap<String, LinkedHashMap<Date, Double>>> list = new ArrayList<>();
list.add(mainCodesMap)