Java中使用集合函数对数据进行操作
Java提供了一系列强大的集合函数来操作数据,这些函数包括过滤、转换、聚合等功能。在实际开发中,我们常常需要对数据进行操作,从而得到我们想要的结果。下面将介绍一些常用的集合函数及其使用方法。
一、筛选过滤函数
1. filter 函数
filter 函数用于筛选符合条件的元素,返回一个包含所有符合条件元素的新集合。
eg:
List<Integer> list = Arrays.asList(1,2,3,4,5); List<Integer> result = list.stream().filter(item -> item > 3).collect(Collectors.toList()); System.out.println(result); // [4, 5]
上面的代码使用 filter 函数筛选出大于 3 的数字,并返回一个新的集合。
2. distinct 函数
distinct 函数用于去除重复的元素,返回一个包含不同元素的新集合。
eg:
List<Integer> list = Arrays.asList(1,2,3,4,4,5,5); List<Integer> result = list.stream().distinct().collect(Collectors.toList()); System.out.println(result); // [1, 2, 3, 4, 5]
上面的代码使用 distinct 函数去除重复的数字,并返回一个新的集合。
3. limit 函数
limit 函数用于限制集合中元素的数量,返回一个包含限制数量元素的新集合。
eg:
List<Integer> list = Arrays.asList(1,2,3,4,5,6); List<Integer> result = list.stream().limit(3).collect(Collectors.toList()); System.out.println(result); // [1, 2, 3]
上面的代码使用 limit 函数限制返回集合中元素的数量为 3,并返回一个新的集合。
4. skip 函数
skip 函数用于跳过指定数量的元素,返回一个包含跳过元素后剩下的元素的新集合。
eg:
List<Integer> list = Arrays.asList(1,2,3,4,5,6); List<Integer> result = list.stream().skip(3).collect(Collectors.toList()); System.out.println(result); // [4, 5, 6]
上面的代码使用 skip 函数跳过前三个数字,并返回一个新的集合。
二、转换函数
1. map 函数
map 函数用于对集合中的元素进行转换,返回一个包含新元素的新集合。
eg:
List<Integer> list = Arrays.asList(1,2,3,4,5); List<Integer> result = list.stream().map(item -> item * 2).collect(Collectors.toList()); System.out.println(result); // [2, 4, 6, 8, 10]
上面的代码使用 map 函数将集合中的每个元素都乘以 2,并返回一个新的集合。
2. flatMap 函数
flatMap 函数用于将集合中的每个元素转换成一个新集合,并将所有新集合合并成一个新的集合。
eg:
List<List<Integer>> list = Arrays.asList(Arrays.asList(1,2),Arrays.asList(3,4),Arrays.asList(5,6)); List<Integer> result = list.stream().flatMap(item -> item.stream()).collect(Collectors.toList()); System.out.println(result); // [1, 2, 3, 4, 5, 6]
上面的代码使用 flatMap 函数将集合中的每个列表都展开成一个新的集合,并将所有新集合合并成一个新的集合。
三、聚合函数
1. reduce 函数
reduce 函数用于对集合元素进行累加、拼接等操作,返回一个聚合后的结果。
eg:
List<Integer> list = Arrays.asList(1,2,3,4,5); int result = list.stream().reduce(0, (a,b) -> a + b); System.out.println(result); // 15
上面的代码使用 reduce 函数对集合元素进行累加,并返回一个聚合后的结果。
2. collect 函数
collect 函数用于将集合转换成一个新集合、map 等类型的集合,返回一个新的集合。
eg:
List<Integer> list = Arrays.asList(1,2,3,4,5); Set<Integer> result = list.stream().filter(item -> item > 3).collect(Collectors.toSet()); System.out.println(result); // [4, 5]
上面的代码使用 collect 函数将集合中大于 3 的元素转换成一个 Set 集合,并返回一个新的集合。
以上就是 Java 中常用的集合函数及其使用方法。通过使用这些函数,我们可以方便地对集合进行操作,从而得到我们想要的结果。
