行业资讯 2025年08月6日
0 收藏 0 点赞 807 浏览 2061 个字
摘要 :

文章目录 1.一行代码初始化ArrayList 1.1. 使用Arrays.asList()从数组初始化ArrayList 1.2. 使用List.of() [Java 9及以上] 2.使用构造函数初始化ArrayList 3.从Java 8……




  • 1.一行代码初始化ArrayList
    • 1.1. 使用Arrays.asList()从数组初始化ArrayList
    • 1.2. 使用List.of() [Java 9及以上]
  • 2.使用构造函数初始化ArrayList
  • 3.从Java 8 Stream初始化ArrayList

Java中的ArrayList代表一个可调整大小的对象数组,允许我们添加、删除、查找、排序和替换元素。ArrayList是集合框架的一部分,并实现了List接口。

根据需求,我们可以以多种方式初始化ArrayList。在本教程中,我们将学习如何基于一些常见用例初始化ArrayList。

//快速参考
// 1 - 初始容量为10的空ArrayList
ArrayList<String> list = new ArrayList<>();
//2 - 初始容量为64的空ArrayList
ArrayList<String> list = new ArrayList<>( 64 );
//3 -在一行中初始化并填充arraylis
ArrayList<String> names = new ArrayList<>( Arrays.asList(...) );
ArrayList<String> names = new ArrayList<>( List.of(...) );
//4 - 从现有集合初始化arraylist
 ArrayList<String> list = new ArrayList<>( collection );
//5 - Collect stream elements
List<String> list = stream.collect(Collectors.toCollection(ArrayList::new));

1.一行代码初始化ArrayList

通过不同语句创建和初始化ArrayList有时会生成不必要的样板代码。我们可以使用以下方式优化ArrayList的创建。

ArrayList<String> names = new ArrayList<>( Arrays.asList(\"a\", \"b\", \"c\") );

1.1. 使用Arrays.asList()从数组初始化ArrayList

要在一行语句中初始化ArrayList,可以使用Arrays.asList方法获取数组中的所有元素,并将数组参数传递给ArrayList构造函数。

1.2. 使用List.of() [Java 9及以上]

我们可以使用List.of()静态工厂方法创建不可修改的列表。唯一的缺点是这些列表不支持add()操作。

ArrayList<String> names = new ArrayList<>( List.of(\"a\", \"b\", \"c\") );

2.使用构造函数初始化ArrayList

使用ArrayList构造函数是传统的方法。我们可以使用无参数构造函数来初始化一个空的ArrayList(具有默认的初始容量为10),并使用add()方法向列表中添加元素。

ArrayList<String> names = new ArrayList<>();
//一次添加1个元素
names.add(\"a\");   
names.add(\"b\");
names.add(\"c\");

可选地,ArrayList构造函数可以接受一个可选参数initialCapacity,它必须是正整数,并表示列表的初始容量。初始容量表示ArrayList在不调整其内部数组大小的情况下可以容纳的元素数量。

以下示例创建了一个具有初始容量为64的整数ArrayList。这意味着在添加第65个元素时会发生列表大小调整。通过避免调整操作,我们可以提高前64个元素的性能。

ArrayList<Integer> list = new ArrayList<>(64);

我们可以逐个添加元素,也可以传递另一个集合以一次性使用addAll()方法添加元素。这在使用值或来自其他任何类型的集合的现有对象初始化ArrayList时非常有用。

HashMap<String, Integer> details = new HashMap<>();
details.put(\"keanu\", 23);
details.put(\"max\", 24);
details.put(\"john\", 53);
//在ArrayList中添加多个元素
names.addAll(details.keySet());  

3.从Java 8 Stream初始化ArrayList

Stream代表允许以函数式编程风格在对象集合上执行操作的元素序列。我们还可以将流中的对象收集到一个新的ArrayList中。

Stream<String> stream = Stream.of(\"a\", \"b\", \"c\");
ArrayList<String> stringList = stream
  //执行流操作
  .collect(Collectors.toCollection(ArrayList::new));

这就是有关在Java中初始化ArrayList的全部内容。如果您有问题,请在评论中提出。

微信扫一扫

支付宝扫一扫

版权: 转载请注明出处:https://www.zuozi.net/9285.html

管理员

相关推荐
2025-08-06

文章目录 一、Reader 接口概述 1.1 什么是 Reader 接口? 1.2 Reader 与 InputStream 的区别 1.3 …

988
2025-08-06

文章目录 一、事件溯源 (一)核心概念 (二)Kafka与Golang的优势 (三)完整代码实现 二、命令…

465
2025-08-06

文章目录 一、证明GC期间执行native函数的线程仍在运行 二、native线程操作Java对象的影响及处理方…

348
2025-08-06

文章目录 一、事务基础概念 二、MyBatis事务管理机制 (一)JDBC原生事务管理(JdbcTransaction)…

456
2025-08-06

文章目录 一、SnowFlake算法核心原理 二、SnowFlake算法工作流程详解 三、SnowFlake算法的Java代码…

517
2025-08-06

文章目录 一、本地Jar包的加载操作 二、本地Class的加载方法 三、远程Jar包的加载方式 你知道Groo…

832
发表评论
暂无评论

还没有评论呢,快来抢沙发~

助力内容变现

将您的收入提升到一个新的水平

点击联系客服

在线时间:08:00-23:00

客服QQ

122325244

客服电话

400-888-8888

客服邮箱

122325244@qq.com

扫描二维码

关注微信客服号