转换通用ArrayList

时间:2013-12-03 15:55:01

标签: java generics

是否可以转换:

ArrayList<?> objects;ArrayList<String>(),如果您知道objects只包含字符串?

2 个答案:

答案 0 :(得分:7)

是;只是施展它。
您将收到编译时警告,因为即使知道这一点,编译器也不知道。

请注意,如果其他人在您投射后将其他类添加到列表中,则在尝试使用它时会出现异常。

这只是因为类型擦除才真实。

答案 1 :(得分:2)

ArrayList<?> anonymList = null;
ArrayList<String> strings = (ArrayList<String>) anonymList;