为什么通过Arrays.asList转化后的list不能强制转换成ArrayList(没有编译错误,但是运行时要出现异常) 5
String[]str={"liu","guan","zhang"};Listlist1=newArrayList();list1=Arrays.asList(str);...
String[] str={"liu","guan","zhang"};
List list1 = new ArrayList();
list1=Arrays.asList(str);
ArrayList list2 = (ArrayList)list1//这个有异常
这是什么原因啊,求教高手,老师说是list1中类型太多,不能强制转换,不是很懂
; 忘了打,不是这个问题。 如果这样就没有问题 List list3=new ArrayList(list1); ArrayList list4=(ArrayList)list3;//这个可以转 展开
List list1 = new ArrayList();
list1=Arrays.asList(str);
ArrayList list2 = (ArrayList)list1//这个有异常
这是什么原因啊,求教高手,老师说是list1中类型太多,不能强制转换,不是很懂
; 忘了打,不是这个问题。 如果这样就没有问题 List list3=new ArrayList(list1); ArrayList list4=(ArrayList)list3;//这个可以转 展开
4个回答
展开全部
强制乡下转型 必须先确定可以像下转型才行
简单的例子 Object o = new Object();
如果按你上边说的的话 这个o的就可以强制转型成任意一个类型的对象 多有的类都继承Object类嘛
补充里说的当然可以转了 List list3=new ArrayList(list1); 这个时候用到了自动向上转
简单的例子 Object o = new Object();
如果按你上边说的的话 这个o的就可以强制转型成任意一个类型的对象 多有的类都继承Object类嘛
补充里说的当然可以转了 List list3=new ArrayList(list1); 这个时候用到了自动向上转
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
有泛型,不确定类型,当然不给你转
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
ArrayList list2 = (ArrayList)list1.clone();
是警告还是异常?
是警告还是异常?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询