java - 对两个 List 的每个元素求和s 进入一个新列表
问题描述
如何通过相同索引的包含值将两个列表合并为一个列表。
我有 2 个列表,我想通过相同索引的包含值合并两个列表。
(如果可能的话,请建议我使用 java 8: Streams。)
List<String> a = Arrays.asList("1", "2", "3");
List<String> b = Arrays.asList("10", "20", "30");
输出 :
{"11", "22", "33"}
解决方案
仅使用标准库的解决方案:
List<String> a = Arrays.asList("1", "2", "3");
List<String> b = Arrays.asList("10", "20", "30");
List<String> c = IntStream.range(0, a.size())
.map(i -> Integer.parseInt(a.get(i)) + Integer.parseInt(b.get(i)))
.mapToObj(Integer::toString)
.collect(Collectors.toList());
请注意,输入将商店编号列为String
,如您的示例中所指定。此外,您可以将map()
和mapToObj()
调用合并为一个mapToObj()
调用,但为了清楚起见,我想将其分开。
它还假设两个列表的大小相同,如果不是,ArrayIndexOutOfBoundsException
将被抛出。
推荐阅读
- python - 使用 matplotlib 测试 check_figures_equal 装饰器后,是否有内置方法来清理图形文件?
- r - 理解 R 中 str 函数的输出
- javascript - 数组映射功能不起作用(不在 React 中渲染元素)
- mysql - SQL 续集
- swagger - 生成的 nodejs 服务器存根缺少路由
- android - Android Kotlin:从字符串路径创建文件不起作用
- static - Nextjs 静态页面:刷新 -> 404
- c++ - 使用 RK4 求解微分方程,使用 Fortran 比使用 C++ 快 5 倍
- django - 如何通过信号在 Django 中制作通知系统
- excel - 如何基于另一个单元格添加图标条件格式?