java数组转list(Arrays .asList)

习惯性的错误代码:

Integer[] intArr = {1,2,3};
List<Integer> lst = Arrays .asList(intArr);
lst.add(4);

报UnsupportedOperationException异常,原因是Arrays .asList() 返回的固定大小的列表,无法进行add、remove等操作;

正确的用法:

1、遍历数组添加,普通的for循环写法略,Java8可使用lambda表达式简化:

Integer[] intArr = {1,2,3};
List<Integer> lst = new ArrayList<>();
Arrays.stream(intArr).forEach((x) -> lst3.add(x));

2、new一个新list

Integer[] intArr = {1,2,3};
List<Integer> lst = new ArrayList<>(Arrays .asList(intArr));
lst.add(4);

 

posted @ 2018-09-27 10:54  周颜  阅读(830)  评论(0编辑  收藏  举报