首页 > Java > java教程 > 正文

在Java中如何合并多个List集合

P粉602998670
发布: 2025-11-05 10:19:02
原创
652人浏览过
合并多个List可通过addAll、Stream API或Guava库实现;2. addAll最直接,适合简单合并;3. Stream.concat或flatMap适用于Java 8+,代码简洁且支持多个List;4. Guava的Iterables.concat适合引入第三方库的项目。

在java中如何合并多个list集合

在Java中合并多个List集合有多种方式,根据不同的需求和使用场景可以选择合适的方法。下面介绍几种常见且实用的合并方式。

使用addAll方法

addAll 是最直接的方式,适用于合并两个或多个List。它会将一个List中的所有元素添加到另一个List中。

示例:

List<String> list1 = new ArrayList<>(Arrays.asList("a", "b"));
List<String> list2 = new ArrayList<>(Arrays.asList("c", "d"));
List<String> result = new ArrayList<>();
result.addAll(list1);
result.addAll(list2);
// result = ["a", "b", "c", "d"]

注意:如果原List需要保留,应创建新的List来接收结果,避免修改原始数据。

立即学习Java免费学习笔记(深入)”;

使用Stream API(Java 8+)

当需要合并多个List并希望代码更简洁时,可以使用 Stream.concatflatMap

示例1:使用concat合并两个List

Gridster.js多列网格式拖动布局插件
Gridster.js多列网格式拖动布局插件

网页中拖动 DIV 是很常见的操作,今天就分享给大家一个 jQuery 多列网格拖动布局插件,和其它的插件不太一样的地方在于你处理拖放的元素支持不同大小,并且支持多列的网格布局,它们会自动的根据位置自己排序和调整。非常适合你开发具有创意的应用。这个插件可以帮助你将任何的 HTML 元素转换为网格组件

Gridster.js多列网格式拖动布局插件 74
查看详情 Gridster.js多列网格式拖动布局插件
List<String> result = Stream.concat(list1.stream(), list2.stream())
  .collect(Collectors.toList());

示例2:合并多个List(三个及以上)

List<String> list3 = Arrays.asList("e", "f");
List<String> result = Stream.of(list1, list2, list3)
  .flatMap(Collection::stream)
  .collect(Collectors.toList());

这种方式更灵活,尤其适合动态数量的List合并。

使用第三方库(如Guava)

如果你的项目中引入了Guava,可以使用 Iterables.concat 方法。

List<String> combined = Lists.newArrayList(
  Iterables.concat(list1, list2, list3)
);

Guava提供了更丰富的集合操作工具,适合复杂场景。

基本上就这些常用方法。选择哪种取决于你的Java版本、性能要求以及是否使用额外依赖。对于简单场景,addAll足够;对于函数式风格,推荐Stream方式。

以上就是在Java中如何合并多个List集合的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号