集合<=>数组

集合转换为数组
Collection上定义了一个方法:toArray可以将当前集合转换为一个数组

public class CollectionToArrayDemo {
    public static void main(String[] args) {
        Collection<String> c = new ArrayList<>();
        c.add("one");
        c.add("two");
        c.add("three");
        c.add("four");
        c.add("five");
        System.out.println(c);
//        Object[] array = c.toArray();
        /*
            toArray方法传入的数组长度实际没有长度要求,就功能而言如果给定的数组长度>=
            集合的size时,就是用该数组(将集合元素存入到数组中)然后将其返回。
            如果指定的数组长度不足时会根据该数组类型自行创建一个与集合size一致的数组
            并返回。
         */
        String[] array = c.toArray(new String[c.size()]);
        System.out.println(Arrays.toString(array));
    }
}
数组转换为集合
数组的工具类Arrays提供了一个静态方法asList,可以将一个数组转换为一个List集合
public class ArrayToListDemo {
    public static void main(String[] args) {
        String[] array = {"one","two","three","four","five"};
        System.out.println("array:"+ Arrays.toString(array));
        List<String> list = Arrays.asList(array);
        System.out.println("list:" + list);
        //对该集合的操作就是对原数组对应的操作
        list.set(1,"six");
        System.out.println("list:" + list);
        System.out.println("array:"+ Arrays.toString(array));
        //会改变数组长度的操作都是不支持的,因为数组是定长的。
        //会抛出异常:java.lang.UnsupportedOperationException(不支持的操作异常)
//        list.add("seven");

//        List<String> list2 = new ArrayList<>();
//        list2.addAll(list);
        /*
            所有的集合都支持一个参数为Collection的构造器,作用是在创建当前集合的同时
            包含给定集合中的所有元素
         */
        List<String> list2 = new ArrayList<>(list);
        System.out.println("list2:"+list2);
        list2.add("seven");
        System.out.println("list2:"+list2);
    }
}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值