Java8分组列表列表来映射

2023-11-21

我有一个Model and a Property具有以下签名的类:

public class Property {

    public String name;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}

public class Model {

    private List<Property> properties = new ArrayList<>();

    public List<Property> getProperties() {
        return properties;
    }
}

我想要一个Map<String, Set<Model>> from a List<Model>其中键是来自的名称Property班级。我如何使用 java8 流按其列表对该列表进行分组Properyes的名字?全部Propertyes 的名称是唯一的。

可以在单个流中解决,还是应该以某种方式将其拆分或采用经典解决方案?


yourModels.stream()
          .flatMap(model -> model.getProperties().stream()
                  .map(property -> new AbstractMap.SimpleEntry<>(model, property.getName())))
          .collect(Collectors.groupingBy(
                Entry::getValue, 
                Collectors.mapping(
                    Entry::getKey, 
                    Collectors.toSet())));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Java8分组列表列表来映射 的相关文章

随机推荐

  • 将带有嵌套括号的字符串转换为嵌套列表,python

    Stack Overflow 上还有其他涉及此问题的问题 例如如何解析字符串并返回嵌套数组 但它们都引用以下格式的列表 abc de fg 转到表格 a b c d e f g 我有一个表格的列表 wordOneWord2 OtherWor
  • 关闭 Pattern::patv 安全吗?

    默认情况下数学如果我对两者使用相同的名称 则会抛出警告消息Blank and BlankSequence模式 f x x g x Pattern patv Name x used for both fixed and variable le
  • 使用 PHP 导出 XLS 文件时 Google Chrome 出现错误

    我一直在使用 PHP 脚本将数据从数据库 mysql 导出到 XLS 文件 文件导出过程在 Firefox 和 IE 上运行良好 我在尝试使用 Google Chrome 导出时遇到错误 谷歌浏览器的错误是 Duplicate header
  • 如何导出交互式 rgl 3D 图以共享或发布?

    我使用 rgl 包在 R 中制作了交互式 3D 绘图 我希望能够将其发送 并保持交互 给同事 以便她可以在笔记本电脑上的会议中展示 旋转 有没有办法做到这一点 这是我用来生成绘图的代码 这是情节 library rgl plot3d pca
  • java、xsd 和编组:jre bug,我的错还是 xsd 问题?

    我遇到了问题编组将 JAXB 模型树转换为 xml 文件 我使用创建了这些模型类xjc 我无法修改这些 xml 架构 它们是外部定义的 类似于this缺乏答案的问题 根据 xjc 和其他 xml 工具 xml 模式文件似乎是有效的 我问是否
  • ASP.NET 回发会导致 URL 重写出现问题吗?

    我在我的 asp net 项目中使用 Intelligencia 进行 url 重写 我通过进行 URL 重写的研发解决了许多问题 但现在我遇到了一个有关页面回发的问题 页面回发将我的重写网址更改为原始网址 所以 谁能帮我离开这里 您可以在
  • MongoDB:如何查找忽略区分大小写、重音符号和百分比逻辑(%)的文档

    我想对我的 mongodb 数据库中的集合进行搜索 在我的收藏中 我有带有 名称 字段的文档 可以是如下值 i 瓜纳巴拉宫 城市宫 节日宫 等 当用户键入诸如 pala 或 pal 或 Pala 或 Pal 之类的搜索时 i 中的所有这些项
  • 如何格式化具有给定精度和零填充的浮点数?

    我已经看过几十个类似的问题 我很高兴得到另一个答案的链接 但我想在 python 3 3 中对浮点数进行零填充 n 2 02 print format n desired output 002 0200 浮点数的精度很容易 但我也无法获得零
  • 将 optgroup 标签显示为初始选项 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心以获得指导 是否可以在选择下拉列表中将
  • 如何在 Groovy 中同时使用 GroupBy 和 Sum?

    我有一个这样的集合 patient1 value1 patient2 value2 例如 x 1 20 28 1 11 11 2 4 60 2 3 68 I use countBy获取每个患者的计数 def counts x countBy
  • 如何修复 nginx 入口的“无法确保负载均衡器”错误

    在 Azure 上使用 helm 和静态 IP 设置新 的 nginx ingress 时 nginx 控制器永远不会分配静态 IP 它总是说
  • Spring AOP:从切入点中排除避免最终类和枚举

    我正在尝试使用 Spring AOP 来实现日志记录 我已经定义了 Pointcut execution com mycom private void framework Around framework public Object aro
  • 无法使用经过训练的 Tensorflow 模型

    我是深度学习和 Tensorflow 的新手 我将预训练的张量流 inceptionv3 模型重新训练为保存的模型 pb识别不同类型的图像 但是当我尝试使用以下代码的 fie 时 with tf Session as sess with t
  • 从 powershell 启动非阻塞进程

    我正在编写一个 powershell 脚本 需要同时将代码推送到多个 git 存储库 这是我迄今为止的脚本 param parameter Mandatory true string repoPath parameter Mandatory
  • 仅使用键盘导航 UI

    我正在尝试仅使用键盘浏览记录列表 当页面加载时 默认的 焦点 应该在第一条记录上 当用户单击键盘上的向下箭头时 需要聚焦下一条记录 当用户单击向上箭头时 应聚焦前一条记录 当用户单击 Enter 按钮时 应该将他们带到该记录的详细信息页面
  • Typeahead 将结果显示为未定义

    我正在尝试使用 typeahead 显示谷歌建议 Ajax 调用工作正常并且数据正确返回 执行前返回过程 数据 data 包含以 w 开头的字符串数组 data 沃尔玛 天气 富国银行 worldstarhiphop 沃尔格林 维基百科 白
  • Node js 请求实体太大,且无法上传 multer

    好吧 我尝试了不同的方法来上传 200k 文件 增加了限制 更改了参数 做了所有更改了 multer 的操作 Fucei 我知道我在堆栈中读到的所有内容 我在谷歌上发现基本的谷歌搜索已经完成了我的问题 而不是向上而是向下的图片就像魅力一样
  • 将 sqlite 导出到 csv

    我试图从我的 sqlite 数据库中获取数据并将其写入 csv 文件 并在完成写入后通过电子邮件发送信息 我的数据库中只有一个包含 3 列的表 我有 DBAdapter 和一个具有用户必须按下的按钮的类以便能够导出数据 这是我尝试过的代码导
  • Scala 隐式类型转换和 ==

    谁能告诉我为什么隐式类型转换不起作用 例子 class BitArray l Int v Long val length l var value v def that BitArray value that value def intege
  • Java8分组列表列表来映射

    我有一个Model and a Property具有以下签名的类 public class Property public String name public String getName return name public void