栏目分类:
子分类:
返回
终身学习网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
终身学习网 > IT > 软件开发 > 后端开发 > Java

流处理Stream

Java 更新时间:发布时间: 百科书网 趣学号

流处理Stream
  • 前言
  • 流处理之toMap()方法
  • 总结


前言

提示:这里可以添加本文要记录的大概内容:


提示:以下是本篇文章正文内容,下面案例可供参考

流处理之toMap()方法

Map中去除重复映射键,一个IllegalStateException执行收集操作时被抛出。 如果映射的密钥可能有重复,请改用toMap(Function, Function, BinaryOperator)
Map eventMap = missionFinishEventList.stream()
.collect(Collectors.toMap(CronusMissionFissionEventDTO::getEventType, o -> o, (k1, k2) -> k2));

O->O跟Function.identity()意识一样
以下产生一个Map映射学生到他们的平均成绩:
Map studentToGPA students.stream().collect(toMap(Functions.identity(), student -> computeGPA(student)));
以下产生一个Map映射学生的唯一标识符:
Map studentIdToStudent students.stream().collect(toMap(Student::getId, Functions.identity());

如果您有一个Person的流,并且您想要生成一个“电话簿”映射名称来解决,但是可能有两个人具有相同的名称,您可以按照以下方式优雅地处理这些冲突,并产生一个Map映射名称到一个并置的地址列表:
Map phoneBook people.stream().collect(toMap(Person::getName, Person::getAddress, (s, a) -> s + ", " + a));

keyMapper - 产生密钥的映射函数
valueMapper - 产生值的映射函数
mergeFunction - 一个合并函数,用于解决与相同键相关联的值之间的冲突,提供给 Map.merge(Object, Object, BiFunction)
mapSupplier - 返回一个新的空的 Map的函数,其中将插入结果

总结

提示:这里对文章进行总结:

例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

转载请注明:文章转载自 www.051e.com
本文地址:http://www.051e.com/it/986642.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 ©2023-2025 051e.com

ICP备案号:京ICP备12030808号