【发布时间】:2018-11-12 11:02:19
【问题描述】:
List<Object> frames = new ArrayList();
List<String> names = new ArrayList();
frames.add(names);
//compiler error
frames.get(0).add("ABCD");
由于.get() 返回一个对象类型,而一个对象类型没有.add() 方法,编译器会引发错误。如何将对象类型转换为 List 类型?
【问题讨论】:
-
你为什么首先尝试这样做?如果这是XY problem,请给我们更多背景信息。强制转换是一种代码味道。
-
在你的实际情况中,
frames的元素都是List<String>,还是包含多种类型,你只知道第一个是List<String>? -
@Bohemian,元素类型不同。
-
@JohnKugelman,我正在做我的任务,代码解析器会生成给定程序的所有可能路径。
标签: java list generics arraylist collections