List<?>是不能进行类型转换的。这很奇怪。如下
List<String> strs = new ArrayList<String>();
List<Object> objs = new ArrayList<Object>();
objs = (List<Object>)strs; //语法错误
个人理解是List<Object>不作为一个类型存在。
而对应的数组却可以。因为java里面,数组作为一个类型存在。
String[] str = new String[10];
Object[] objs = (Object[])str; //正确