V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
unregister
V2EX  ›  Java

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

  •  
  •   unregister · Dec 13, 2022 · 1782 views
    This topic created in 1235 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
        1
    palma520  
       Dec 13, 2022 via Android   ❤️ 1
    Collectors.toMap
    unregister
        2
    unregister  
    OP
       Dec 13, 2022
    @xuhuanfeng232 ok ,谢谢。
    itechify
        3
    itechify  
    PRO
       Dec 13, 2022 via Android   ❤️ 1
    谨记 toMap 第三个参数,存在两个 key 重复的处理方式
    2018yuli
        4
    2018yuli  
       Dec 26, 2022
    .collect(Collectors.groupingBy(k -> k.getName(), Collectors.mapping(v -> v, Collectors.toList())));
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2506 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 12:20 · PVG 20:20 · LAX 05:20 · JFK 08:20
    ♥ Do have faith in what you're doing.