Java 初始化集合(List)的方式汇总,new ArrayList()
程序员文章站
2022-09-29 21:40:11
通过本篇的学习,你将了解【5】种以上的集合(List)初始化方式(因为我也在持续更新),最好用的不一定是 new ArrayList()。...
原创博文,欢迎转载,转载时请务必附上博文链接,感谢您的尊重。
前言:
通过本篇的学习,你将了解【5】种以上的集合(List)初始化方式(因为我也在持续更新),最好用的不一定是 new ArrayList()。
集合(List、Set)与数组互转方法,还有注意事项,需要的小伙伴,请看我的另一篇博文:https://jiming.blog.csdn.net/article/details/110437544
正文
1. ArrayList<E> 常规方式
List list = new ArrayList();
list.add("jimmy");
list.add("amy");
list.add("simmy");
2. 匿名内部类
List<String> list = new ArrayList<>() {{
add("jimmy");
add("amy");
add("simmy");
}};
3. Arrays 工具类
java.util.Arrays 工具使用时,有一点需要特别注意:Arrays.asList() 方法返回对象是一个 Arrays 内部类,并没有实现集合的修改方法。Arrays.asList() 体现的是适配器模式,只是转换接口,后台的数据仍是数组。
- 如果不需要改变数组元素,只做展示完全可以使用:(其实就是数组 Arr 转 List,也可以直接定义元素[])
String[] arr = new String[]{"jimmy","amy","simmy"};
List list_1 = Arrays.asList(arr);
List list_2 = Arrays.asList("jimmy","amy","simmy");
- 如果改变数组元素,我们可以改进下:(使用 new 创建新对象,该对象是灵活可变的)
String[] arr = new String[]{"jimmy","amy","simmy"};
List list_1 = new ArrayList<>(Arrays.asList(arr));
List list_2 = new ArrayList<>(Arrays.asList("jimmy","amy","simmy"));
4. JDK 8 Stream
Stream 是 JDK 8 推出来的新概念,比集合还要更强大,还可以和集合互相转换
List<String> list = Stream.of("jimmy","amy","simmy").collect(Collectors.toList());
5. JDK 9 List.of
这是 JDK 9 里面新增的 List 接口里面的静态方法,同样也是不可变的
List<String> list = List.of("jimmy","amy","simmy");
总结
- 如果初始化时不需要预埋数据,使用 new ArrayList() 很便捷;
- 如果初始化时需要预埋数据,java.util.Arrays 工具类显得很实用(要注意 Arrays 的特性哦),使用它不需要考虑 JDK 版本。
少侠请留步 ... ヾ(◍°∇°◍)ノ゙ ...
我是IT无知君,您的点赞、评论和关注,才是我不懈创作的动力!!
学无止境,气有浩然,让我们一起加油,乘风破浪,江湖有缘再见。
本文地址:https://blog.csdn.net/weixin_44259720/article/details/110443166
上一篇: 解决0.1+0.2≠0.3的问题
推荐阅读
-
Java 中初始化 List 集合的 6 种方式!
-
Java中res.add(list)和res.add(new ArrayList<Integer>(list))的区别
-
Java 初始化集合(List)的方式汇总,new ArrayList()
-
java中List集合去重的方式有哪些
-
java中遍历ArrayList集合的四种方式
-
Java 初始化集合(List)的方式汇总,new ArrayList()
-
Java中res.add(list)和res.add(new ArrayList<Integer>(list))的区别
-
java中遍历ArrayList集合的四种方式
-
java中List集合去重的方式有哪些
-
Java 中初始化 List 集合的 7 种方式!