如何使用java8 stream 将两个List<Integer> 集合中的相同下标的值相加生成一个新的List

新手上路,请多包涵
List<Integer> list1 =Arrays.asList(1,2,3,4,5);
List<Integer> list2 =Arrays.asList(1,2,3,4,5);

如上,两个list对象,如何使用java8 stream提供的功能,实现两个list中下标一样的值相加,生成一个新的list
如上两个list应该生成的结果应该是
{2,4,6,8,10}

阅读 20.8k
1 个回答
List<Integer> list1 =Arrays.asList(1,2,3,4,5);
List<Integer> list2 =Arrays.asList(1,2,3,4,5);

List<Integer> result = IntStream.range(0, list1.size())
                                .map(i -> list1.get(i) + list2.get(i))
                                .boxed()
                                .collect(Collectors.toList());
推荐问题