# 二 集合操作工具

# 2.1 集合元素处理工具

该工具的主要目的是对集合进行处理,让用户在无须考虑NPE的情况下安全地操作集合。主要作用如下:

  • 将集合转换成java8中的stream流
  • 获取集合中的第一个元素
  • 将数据转换成集合
  • 安全地创建集合

该工具是线程安全类的

工具路径:

com.yishuifengxiao.common.tool.collections.DataUtil

使用示例:

// 安全地创建集合,该方法与Arrays.asList不同,
// 创建出来的是ArrayList,可以放心地对创建出来的list进行各种操作
//List<String> list = Arrays.asList("a", "b", "c", "d");
List<String> list = DataUtil.asList("a", "b", "c", "d");

//将集合转换成并行流
Stream<String> parallelStream = DataUtil.parallelStream(list);

//将集合转换成串行流
Stream<String> stream = DataUtil.stream(list);

// 获取集合的第一个元素
String first = DataUtil.first(list);

//将数组转换成集合
String[] strs = {"a", "b", "c", "d"};
List<String> asList = DataUtil.asList(strs);

# 2.2 空集合判断工具

该工具的主要目的在于快速地判断一个集合是否为空集合或者为NULL。其主要作用如下:

  • 判断集合是否为空
  • 判断分页对象是否为空
  • 判断集合是否仅有一个元素

工具路径:

com.yishuifengxiao.common.tool.collections.EmptyUtil

使用示例:

//判断改分页对象是否为空或者null
Page<FileRecord> page = Page.empty();
boolean empty = EmptyUtil.isEmpty(page);

//判断该集合是否为空或者null
List<String> list = new ArrayList<>();
boolean empty1 = EmptyUtil.isEmpty(list);

//判断该集合是否仅有一个元素
boolean onlyOneElement = EmptyUtil.onlyOneElement(list);

# 2.3 字典链式构建工具

该工具的主要目的是能通过链式方法快速地构建一个字典对象。

工具路径:

com.yishuifengxiao.common.tool.collections.MapUtil

使用示例:

Map<String, Object> map = MapUtil.instance().put("k1", "v1").
        put("k2", "v2").put("k3", "v3").build();
Last Updated: 10/11/2021, 2:48:20 PM