Zipping streams using JDK8 with lambda (java.util.stream.Streams.zip)

前端 未结 14 1364
旧巷少年郎
旧巷少年郎 2020-11-21 23:24

In JDK 8 with lambda b93 there was a class java.util.stream.Streams.zip in b93 which could be used to zip streams (this is illustrated in the tutorial Exploring Java8 Lambda

14条回答
  •  北海茫月
    2020-11-21 23:59

    Using the latest Guava library (for the Streams class) you should be able to do

    final Map result = 
        Streams.zip(
            collection1.stream(), 
            collection2.stream(), 
            AbstractMap.SimpleEntry::new)
        .collect(Collectors.toMap(e -> e.getKey(), e  -> e.getValue()));
    

提交回复
热议问题