怎样把AbstractList对象强制转换为 String对象

来源:百度知道 编辑:UC知道 时间:2024/06/08 12:04:25
如list是AbstractList对象
str是String对象

str=(String)list;会报错
小弟新手,问问怎么办

硬要转换的话可以用str=list.toString();但是我敢保证不是你想要的结果。你只能自己写个方法把list中的数据读出来,按照你的想法转换了。

怎样把AbstractList对象强制转换为 String对象

这个命题就是错误的嘛,强制转换也需要类型匹配的才能相互装换,要保证是相同的对象。如果不同,只有一种例外:
就是可以把子类用父类来强制转化或者实现类转化为接口。

你需要的结果上面已经说了,ArrayList可能是保存了一些String对象,如果要取出来:用Iterator,或者(String)list.get(0),(String)list.get(1)..
但是你要保证你装入ArrayList的东西都是String类型的,list是什么东西都可以装的。如果你装的其他对象,肯定会报ClassCastException..

没有例外了,这是规定。

类型不匹配当然会报错,你应该是想把list里面保存的对象强转成String类型的吧

大体方法应该是

str = (String)list.get(0);

上面代码是取list里的第一个元素,他返回的是Object类型的,你要保证它存进去的时候是String的,否则还是会报错的