Google Collections使用笔记-ImmutableList

今天在使用Google Collections这个优秀的工具包,特意做下笔记。

首先项目里导入Google Collections的相关JAR或依赖。

在平时的开发中我们都会遇到在类里初始化数据的业务场景,比如在接口限制前端传的某某类型必须为3006,3025,3008。

如下,我们会初始化一个静态常量,在静态块里初始化值,显然这很冗余,添加的越多占用行数越多,代码不简洁。

但是在使用Google Collections工具包后,这将变得更加简单高效,一行代码搞定。

ImmutableMap ,ImmutableList,ImmutableSet 一经初始化是无法改变的,包括往里面新增数据。

package cn.com.osd.test_goolecollection;
import java.util.ArrayList;
import java.util.List;
import com.google.common.collect.ImmutableList;

public class TestList{
        //原始方法手动添加
	final static List<String> list1 = new ArrayList<String>();
	static{
		list1.add("3006");
		list1.add("3025");
		list1.add("3008");
	}

	//ImmutableMap ,ImmutableList,ImmutableSet 一经初始化是无法改变的,包括往里面新增数据
	final static List<String> list = ImmutableList.of("3006","3025","3008");
	
}

 测试代码:

package cn.com.osd.test_goolecollection;

public class CreatTest {
	public static void main(String[] args) {
		TestList testList = new TestList();
		System.out.println("google coll:"+testList.list);
		System.out.println("手动创建:"+testList.list1);
		
		System.out.println("------------------");
		
		TestList testList1 = new TestList();
		System.out.println("google coll:"+testList1.list);
		System.out.println("手动创建:"+testList1.list1);
	}
}

输出结果: 


 

在测试类里加入这行代码

testList.list.add("2222");

 运行时直接报错

不支持的操作 !!!

对于手动添加的静态常量list1,往里add不会报错

testList.list1.add("2222");

运行结果

添加进去了,是允许操作的。ImmutableList直接不允许add或remove这个list

关于Google Collections工具包的使用仍在继续探究,他会使你的代码高效简洁,因为你不需要重复造轮子。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员beige

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值