unregister
V2EX  ›  Java

List Stream group by 分组 结果 map 里的 value 集合 怎么只返回一个对象

  •  
  •   unregister · Dec 13, 2022 · 2273 views
    This topic created in 1429 days ago, the information mentioned may be changed or developed.

    List<Foo> foos = new ArrayList; Map<String,List<Foo>> map = foos.stream.collect(Collectors.groupingBy(Foo::getName,Function.identity()) 我想结果直接变成 Map<String,Foo> map 这样怎么操作?

    4 replies  •  2022-12-26 15:52:15 +08:00
    palma520
    palma520
    Dec 13, 2022 via Android❤️1
    1
    Collectors.toMap
    unregister
    unregister
    OP
    Dec 13, 2022
    2
    @xuhuanfeng232 ok ,谢谢。
    itechify
    itechify
    Dec 13, 2022 via Android❤️1
    3
    谨记 toMap 第三个参数,存在两个 key 重复的处理方式
    2018yuli
    2018yuli
    Dec 26, 2022
    4
    .collect(Collectors.groupingBy(k -> k.getName(), Collectors.mapping(v -> v, Collectors.toList())));
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4513 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 42ms · UTC 01:19 · PVG 09:19 · LAX 17:19 · JFK 20:19
    ♥ Do have faith in what you're doing.