使用Java 8的Stream API进行数据清洗和操作?
在Java 8的Stream API中,我们可以很方便地进行数据清洗和操作。以下是一些示例:
- 数据清洗:删除重复的数据
List<String> list = Arrays.asList("a", "b", "c", "b");
list = list.stream().distinct().collect(Collectors.toList()));
System.out.println(list); // Output: [a, b, c]
- 数据操作:对列表进行排序、分组等操作
// 对列表按照字符顺序进行排序
List<String> sortedList = list.stream()
.sorted(Comparator.comparing(String::charAt))))
.collect(Collectors.toList()));
System.out.println(sortedList); // Output: [a, b, c]
- 分组:根据某个条件对数据进行分组
// 根据字符串的长度进行分组
Map<Integer, List<String>>> groupedList = list.stream()
.collect(Collectors.groupingBy(String::length)));
System.out.println(groupedList); // Output: {1=[a]}, 2=[b], 3=[c]}
以上就是使用Java 8 Stream API进行数据清洗和操作的一些示例。
还没有评论,来说两句吧...