常用List集合初始化方式(转自张喜喜)

本文介绍了Java中初始化List集合的六种方法,包括标准的add方式、使用双大括号、Arrays.asList、Stream.of、Guava的Lists工具类以及JDK9的List.of方法。其中,使用双大括号存在内存泄漏风险,Arrays.asList创建的集合不可变,而JDK9的List.of是新引入的便捷方式。

1. 先创建List再赋值

标准方式,先创建集合对象,然后逐个调用add方法初始化。用起来比较繁琐,不太方便!

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

list.add(1);

list.add(2);

list.add(3);

2. 使用{{}}双大括号初始化

使用匿名内部类完成初始化。外层的{}定义了一个ArrayList的匿名内部类,内层的{}定义了一个实例初始化代码块。有内存泄漏的风险!不建议在生产项目中使用!

List<Integer> list3 = new ArrayList<Integer>(){

    {

        add(1);

        add(2);

        add(3);

    }

};

3. 使用Arrays.asList

使用Arrays的静态方法asList初始化。返回的list集合是不可变的!

import java.util.Arrays;

List<Integer> list = Arrays.asList(1, 2, 3);

4. 使用StreamJDK8以上)

使用JDK8引入的Streamof方法生成一个stream对象,调用collect方法进行收集,形成一个List集合。

import java.util.stream.Stream;

List<Integer> list = Stream.of(1, 2, 3).collect(Collectors.toList());

5. 使用Google Guava工具集Lists(需要引入Guava工具包)(Guava28.2为最新版本,对应JDK8及以上)

借助Google Guava工具集中的Lists工具类初始化。需要引入Guava包才能用!

import com.google.common.collect.Lists;

List<Integer> list = Lists.newArrayList(1, 2, 3);

6. 使用ListJDK9以上)

使用JDK9引入的List.of方法完成初始化。

import com.sun.tools.javac.util.List;

List<Integer> list = List.of(1, 2, 3);

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值