java List(泛型)和数组互转


参考:http://jingyan.baidu.com/article/86f4a73e607f2937d7526972.html





list 是泛型

String[]  这种类型数据是数组


List to 数组 


List list_1 = new Arraylist();

list_1.add("aa");

list_1.add("bb");

Object[] objs = list_1.toArray();


String[] strs = (String[]) strList.toArray();    //这种写法会报错,

String[]  strs = list_1.toArray(new String[0]);    √



说明:  把list_1 泛型集合 转换为 String 的数组 。


①不带参数的toArray方法,是构造的一个Object数组,然后进行数据拷贝,此时进行转型就会产生ClassCastException 
②带参数的toArray方法,则是根据参数数组的类型,构造了一个对应类型的,长度跟ArrayList的size一致的空数组,虽然方法本身还是以 Object数组的形式返回结果,不过由于构造数组使用的ComponentType跟需要转型的ComponentType一致,就不会产生转型异常

参考:http://blog.csdn.net/gh102/article/details/7301051



数组 转 泛型

String[] userid = {"aa","bb","cc"};

List userList = Arrays.asList(userid);



参考:http://jingyan.baidu.com/article/86f4a73e607f2937d7526972.html







你可能感兴趣的:(java)