首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

object数组不能变换为string数组吗

2011-12-11 
object数组不能转换为string数组吗[codeJava][/code]ListString list new ArrayListString()list.

object数组不能转换为string数组吗
[code=Java][/code]

List<String> list = new ArrayList<String>();
list.add("hello");
list.add("word");
list.add("a");

String[] o=(String[])list.toArray();

for (int i = 0; i < o.length; i++) {
System.out.println(o[i]);
}

//会出现Exception in thread "main" java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [Ljava.lang.String;

[解决办法]
如果用那个方法,泛型的信息已经被擦除,那么你只能 遍历Object的数组

然后 每个Object数组 的单个元素转化为你想要的东西,给你贴个代码

Java code
List<String> list = new ArrayList<String>();        list.add("hello");        list.add("word");        list.add("a");        String[] o=new String[list.size()];        Object[] obj=list.toArray();        int i=0;        for(Object oo:obj){            if(oo instanceof String){ //对每个元素进行类型判断                o[i]=(String)oo;            }            i++;        }//        list.toArray(o);//        for (String s:o) {            System.out.println(s);        }
[解决办法]
关于多态楼主好可以好好理解一下

热点排行