集合和数组互相转换

数组转换为集合
 * 需要注意,转换只能转换为List集合
 * 使用的是数组的工具类Arrays的静态方法asList

 * 只能转换为List集合的主要原因是:Set不能存放重复元素。所以若转换为Set集合可能会出现丢失元素的情况

 String[] array = {"one","two","three","four"};

        List<String> list = Arrays.asList(array);

        System.out.println(list);

       向集合中添加元素
         * 实际上下面的代码会抛出异常,原因在于,该集合是由数组转换过来的,那么该集合就表示原来的数组,
         * 所以对集合的操作就是对数组的操作,那么添加元素会导致原数组扩容,那么就不能表示原来的数组了
         * 所以不允许向该集合添加元素。

      若希望增删元素,需要另创建一个集合

   List<String> list1 = new ArrayList<String>();
          list1.addAll(list);
          list1.add("five");

          System.out.println(list1);

      所有集合都提供了一个带有Collection类型参数的构造方法。
         * 该构造方法称为:复制构造器

         * 作用是在创建当前集合的同时,集合中包含给定集合中的所有元素。

List<String> list1 = new ArrayList<String>(list);
        list1.add("five");
        System.out.println(list1);


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值