原创文章,如有转载,请注明出处:http://blog.csdn.net/yihui823/article/details/6756083
不良代码一
String[] str = {"1", "2", "3", }; List strArray = new ArrayList(); for(int i = 0; i < str.length; i++) { strArray.add(str[i]); } System.out.println(strArray);
代码要做的,就是把一个String数组放到List里面去。
其实有简单的做法:
List<String> strArray = Arrays.asList(str);
这样就可以了。不过,这样得到的List,是不能做增删的,因为它只是个伪List。
我们加一句:strArray.add("a");
执行的时候就会有异常:
Exception in thread"main"java.lang.UnsupportedOperationException
atjava.util.AbstractList.add(AbstractList.java:131)
atjava.util.AbstractList.add(AbstractList.java:91)
at com.study.ArrayAndList.main(ArrayAndList.java:22)
如果我们得到的List还想要增删,那么可以用addAll方法。代码如下:
String[] str = {"1", "2", "3", }; List<String> strArray = new ArrayList<String>(); strArray.addAll(Arrays.asList(str)); strArray.add("a"); System.out.println(strArray);
|