Java常用工具类
Collections类
排序
1  | // 看看使用Collections工具是如何实现升序和降序的  | 
获取最大或最小值
1  | // 有时候需要找出集合中的最大值或者最小值,这时可以使用Collections的max和min方法  | 
转换线程安全集合
1  | // java中的很多集合,比如:ArrayList、LinkedList、HashMap、HashSet等,都是线程不安全的 这些集合在多线程的环境中,添加数据会出现异常  | 
返回空集合
1  | // 我们在判空之后,需要返回空集合,就可以使用emptyList方法  | 
二分查找
1  | // binarySearch方法提供了一个非常好用的二分查找功能,只用传入指定集合和需要找到的key即可  | 
转换成不可修改集合
1  | // 为了防止后续的程序把某个集合的结果修改了,有时候我们需要把某个集合定义成不可修改的,使用Collections的unmodifiablexxx方法就能轻松实现  | 
apache的CollectionUtils工具类
集合判空
1  | // 通过CollectionUtils工具类的isEmpty方法可以轻松判断集合是否为空,isNotEmpty方法判断集合不为空。  | 
对两个集合进行操作
1  | // 有时候我们需要对已有的两个集合进行操作,比如取交集或者并集  | 
google.guava Lists
创建空集合
1  | List<Integer> list = Lists.newArrayList();  | 
快速初始化集合
1  | List<Integer> list = Lists.newArrayList(1, 2, 3);  | 
笛卡尔积
1  | List<Integer> list1 = Lists.newArrayList(1, 2, 3);  | 
分页
1  | // 如果你想将一个大集合分成若干个小集合,可以使用Lists的partition方法  | 
流处理
1  | // 想把某个集合转换成另外一个接口,可以使用Lists的transform方法  | 
颠倒顺序
1  | List<Integer> list = Lists.newArrayList(3, 1, 2);  | 
Objects
对象判空
1  | // Objects的isNull方法判断对象是否为空,而nonNull方法判断对象是否不为空  | 
对象为空抛异常
1  | // 在对象为空时,抛出空指针异常,可以使用Objects的requireNonNull方法  | 
判断两个对象是否相等
1  | // 判断两个对象是否相等,Objects给我们提供了equals方法  | 
BooleanUtils
转换成数字
1  | // 将true转换成数字1,false转换成数字0,可以使用toInteger方法  | 
Boolean转换成布尔值
1  | // 将包装类Boolean对象,转换成原始的boolean对象,可以使用toBoolean方法  | 
Assert
断言参数是否为空
1  | // 断言参数是否空,如果不满足条件,则直接抛异常  | 
断言集合是否为空
1  | // 断言集合是否空,如果不满足条件,则直接抛异常  | 
断言条件是否为空
1  | // 断言是否满足某个条件,如果不满足条件,则直接抛异常  |