当前位置: 首页 > news >正文

Java中初始化一个List的多种方式

1.最原始的方式:先创建,然后再添加元素

List<String> list = new ArrayList<>();
list.add("apple");
list.add("banana");
list.add("cherry");

2.使用Arrays.asList

这是一种快速方便的方式,直接使用数组初始化列表。

List<String> list = Arrays.asList("apple", "banana", "cherry");

注意:由Arrays.asList返回的列表是固定大小的(基于原始数组的视图),所以后续操作中不能添加或删除元素。如果需要一个可变的列表,可以再用其初始化一个新的ArrayList。

List<String> list = new ArrayList<>(Arrays.asList("apple", "banana", "cherry"));

3.使用双括号初始化(匿名内部类)

这种方法利用了匿名内部类的初始化块。

List<String> list = new ArrayList<String>() {{add("apple");add("banana");add("cherry");
}};

这种方式虽然写法简洁,但因为创建了匿名内部类,所以可能导致内存泄漏或隐藏的性能问题。

4.使用Collections.addAll

这种方法可以在创建列表后,将多个元素添加到列表中。

List<String> list = new ArrayList<>();
Collections.addAll(list, "apple", "banana", "cherry");

5.使用Java 8的Stream

利用Stream的操作来生成列表。

List<String> list = Stream.of("apple", "banana", "cherry").collect(Collectors.toList());

6.使用List.of(从Java 9开始)

这是Java 9引入的一个便利方法,可以快速创建不可变的列表。

List<String> list = List.of("apple", "banana", "cherry");

通过List.of创建的列表是不可变的,试图修改它(如添加、删除元素)将抛出UnsupportedOperationException。

总结

这些方法各有特点,可以根据具体需求和Java版本选择适合的初始化方式。

http://www.lryc.cn/news/392619.html

相关文章:

  • BeikeShop多国语言多货币商城系统源码基于Laravel框架
  • gradle构建工具
  • Java需要英语基础吗?
  • 14-36 剑和诗人10 - 用LLM构建 AI 代理平台
  • 如何在Java中实现批量数据处理
  • 项目部署_持续集成_Jenkins
  • 如何选择TikTok菲律宾直播网络?
  • Pseudo-Label : The Simple and Efficient Semi-Supervised Learning Method--论文笔记
  • 信息收集-arping
  • 一文了解常见DNS问题
  • TCP/IP 网络协议族分层
  • Qt:5.QWidget属性介绍(Enabled属性-控件可用性设置、geometry属性-控件位置/大小设置)
  • NoSQL 非关系型数据库 Redis 的使用:
  • python库(5):Psutil库实现系统和硬件监控工具
  • 实验四 图像增强—灰度变换之直方图变换
  • 使用el-col和el-row布局,有版心,一页有两栏布局 三栏布局 四栏布局 使用vue动态渲染元素
  • 中软国际加入龙蜥社区,促进“技术+生态”双向赋能
  • adobe pdf设置默认打开是滚动而不是单页视图
  • React Hooks 深度解析
  • 14-32 剑和诗人6 - GenAI 重塑 SRE 和云工程实践
  • Towards Deep Learning Models Resistant to Adversarial Attacks
  • 2、Key的层级结构
  • 如何在Qt使用uchardet库
  • G9 - ACGAN理论与实战
  • 合合信息大模型“加速器”亮相2024世界人工智能大会,助力大模型学好“专业课”
  • bond网络配置文件中 interface-name 与 id 的区别
  • Linux权限概述
  • 谷粒商城学习-09-配置Docker阿里云镜像加速及各种docker问题记录
  • 基于GWO灰狼优化的多目标优化算法matlab仿真
  • 排序算法-java版本