当前位置:  开发笔记 > 编程语言 > 正文

将2个集合转换为Map

如何解决《将2个集合转换为Map》经验,为你挑选了1个好方法。



1> Tunaki..:

由于没有zip操作Stream(并且没有Pair类),一个简单的解决方案是使用IntStream和循环遍历每个的索引List.

Map map =
    IntStream.range(0, a.size()).boxed().collect(Collectors.toMap(a::get, b::get));

或者,您可以使用提供方法的StreamEx库,zip并具有:

Map map = EntryStream.zip(a, b).toMap();


或者没有拳击开销,但不那么简洁:`IntStream.range(0,a.size()).collect(HashMap :: new,(m,i) - > m.put(a.get(i),b. get(i)),Map :: putAll)`
推荐阅读
吻过彩虹的脸_378
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有