Java之不可变集合

Java之不可变集合

什么是不可变集合?

  1. 不可变集合就是不可被修改的集合。
  2. 集合的数据项在创建的时候提供,并且在整个生命周期中都不可被改变。否则报错

为什么要创建不可变集合?

  1. 如果当某个数据不能被修改,把它防御性地拷贝到不可变集合中是个很好的选择。
  2. 或者当集合对象被不可信的库调用时,不可变形式是安全的。

如何创建不可变集合?

​ 在List、Set、Map接口中,都存在of方法,可以创建一个不可变集合。

方法名称说明
static List of(E…elements)创建一个具有指定元素的List集合对象
static Set of(E…elements)创建一个具有指定元素的Set集合对象
static <K,V> Map<K,V> of(E…elements)创建一个具有指定元素的Map集合对象

代码实现

基于jdk17:

	    //1、不可变的list集合
        List<Double> lists= List.of(700.0,564.5,156.5,500.0);
        // lists.add(689.0);会报错
        // lists.set(2 , 698.5);
        // System.out.println(lists);
        double score = lists.get(1);
        System.out.println(score);

        //2、不可变集合Set集合
        Set<String> names = Set.of("王文君","王文军","王文马","王文牛");
        // names.add("王文驴");
        System.out.println(names);

        //3、不可变的Map集合
        Map<String , Integer> maps = Map.of("华为手机",2,"苹果手机",3);
        // maps.put("vivo手机",2);
        System.out.println(maps);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值