资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

Arrays.asList()数组转集合的坑

1、错误用法:
int arr [] = {1,2,3};
List 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()数组转集合的坑
即使用Arrays.asList()转换后的集合不能进行增删操作

3、正确的使用
              int arr [] = {1,2,3};
        // List ints = Arrays.asList(arr);
        // System.out.println(ints.size());// 1
                // 使用Spring框架
        List list1 = CollectionUtils.arrayToList(arr);
        System.out.println(list1.size());// 3

        List integerList = Arrays.asList(1, 2, 3, 4);
        System.out.println(integerList.size());// 4
        System.out.println("=========");

                // 使用Collections工具类
        List 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 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


分享文章:Arrays.asList()数组转集合的坑
网站路径:http://cdkjz.cn/article/gscedc.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220