Map<String,Set<Pathway>>将字符串映射到一组Pathways属性的转换

我有一个像这样的路径对象:

class Pathway {
  private dbId;
  private name;
}

这些通路位于基因的图谱结构上,指向该基因所属的所有通路的集合

Map<String, Set<Pathway>> geneToPathwayList;

我想将其转换为Map<String, Set<String>> geneToPathwayDbId使用流的地图。

所以要做到这一点,我试图遍历映射的条目集,收集键作为键,然后通过将一组 Pathways 映射到一组 dbId 来收集值,但我无法获得正确的语法. 这是它目前的样子:

Map<String, Set<String>> finalMap = 
    geneToPathwayList.entrySet().stream()
    .collect(Collectors.toMap(
        Map.Entry::getKey, 
            e -> e.stream().map(Pathway::getStId).collect(Collectors.toSet())));

我被挂断了如何e从每个条目中选择作为值。

解决此问题的任何帮助都会非常有帮助!

回答

听起来你在追求

e -> e.getValue().stream().map(Pathway::getDbId).collect(Collectors.toSet())


以上是Map&lt;String,Set&lt;Pathway&gt;&gt;将字符串映射到一组Pathways属性的转换的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>