Arrays.asList()数组转集合的坑
int arr [] = {1,2,3};List<int[]> ints = Arrays.asList(arr);System.out.println(ints.size());// 1
通过Arrays.asList方法转换的List并不是真正的java.util.ArrayList!!!返回的是java.util.Arrays.ArrayList!!!
2、不同之处Arrays.ArrayList 是工具类 Arrays 的一个内部静态类,它没有完全实现List的方法,而 ArrayList直接实现了List 接口,实现了List所有方法。
即使用Arrays.asList()转换后的集合不能进行增删操作
int arr [] = {1,2,3}; // List<int[]> ints = Arrays.asList(arr); // System.out.println(ints.size());// 1 // 使用Spring框架 List list1 = CollectionUtils.arrayToList(arr); System.out.println(list1.size());// 3 List<Integer> integerList = Arrays.asList(1, 2, 3, 4); System.out.println(integerList.size());// 4 System.out.println("========="); // 使用Collections工具类 List<String> list = new ArrayList<>(); Collections.addAll(list, "dog", "cat", "pig"); list.forEach(s -> { System.out.println(s); }); System.out.println("========="); // 使用JDK1.8Lambda表达式 int intArray [] = {1,2,3}; List<Integer> collect = Arrays.stream(intArray).boxed().collect(Collectors.toList()); collect.forEach(integer -> { System.out.println(integer); }); System.out.println("=========");
参考:https://mp.weixin.qq.com/s/iDpx7krEjSue0-IXGiMFeQ
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。