Java创建初始化List集合的几种方式

1.常规操作

List<Integer> list=new ArrayList<>();
	list.add(1);
	list.add(2);
	list.add(3);

2.Arrays工具类(不可变)

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

asList是Arrays的静态方法。这种方式构造的List是固定长度的,如果调用add方法增加新的元素,会报异常java.lang.UnsupportedOperationException。适用于构造静态不变的List.

但是可以通过ArrayList进行包装成动态。

List<Integer> list2=new ArrayList<>(Arrays.asList(1,2,3));
	list2.add(4);

3.JDK8引入的Stream提供的方法

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

4.Collections工具类(不可变)

List<Integer> list4 = Collections.nCopies(5, 1);

复制某元素N遍
也可通过ArrayList进行包装

List<Integer> list5 = new ArrayList<>(Collections.nCopies(5, 1));
	list5.add(2);

5.匿名内部类

List<Integer> list6 = new ArrayList() {{
	add(1);
	add(2);
	add(3);
}};
	 list6.add(4);

6.JDK9引入的 Lists

List<Integer> list7 = Lists.newArrayList(1, 2, 3);
	list7.add(4);

7.使用 guava包的Lists

使用方法同上,提出这种方法主要是很多项目还是java8,没法直接用java9的Lists。

List<Integer> list8 = Lists.newArrayList(1, 2, 3);
	list8.add(4);

8JDK9引入 List.of (不可变)

 List<Integer> list9 = List.of(1,2,3);
  • 3
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值