JAVA中有哪几种初始化ArrayList的方法呢?
2023-03-31 10:43:18 时间
转自:http://www.java265.com/JavaJingYan/202110/16354330941610.html
ArrayList简介:
ArrayList是基于数组实现的,是一个动态数组,其容量能自动增长,类似于C语言中的动态申请内存,动态增长内存。
ArrayList不是线程安全的,只能用在单线程环境下,多线程环境下可以考虑用Collections.synchronizedList(List l)函数返回一个线程安全的ArrayList类,也可以使用concurrent并发包下的 CopyOnWriteArrayList类。
ArrayList实现了Serializable接口,因此它支持序列化,能够通过序列化传输,实现了RandomAccess接口,支持快速随机访问,实际上就是通过下标序号进行快速访问,实现了Cloneable接口,能被克隆。
下文笔者讲述java中初始化ArrayList的三种不同方式,如下所示:
方式1:
实例化一个List对象
然后采用add方法添加数值
例:
List<String> list1 = new ArrayList<String>();
list1.add("java265.com");
list1.add("我的最爱");
list1.add("我的网站");
借助一个List进行初始化
List<String> list2 = new ArrayList<String>(Arrays.asList("java265.com", "我最爱的网站", "我的最爱"));
List<String> list3 = new ArrayList<String>(Collections.nCopies(2, "java265.com"));
使用匿名内部类进行初始化
下面的初始化代码: 最外层的大括号:代表创建一个ArrayList匿名子类 内层的大括号定义了该匿名子类的构造块,自定运行其中的代码
List<String> list4 = new ArrayList<String>() {
{
add("Java265.com");
add("我的最爱");
add("我的网站");
}
};
相关文章
- 为什么我们选择Java开发高频交易系统?
- 中国电信营业厅: 感受 Kotlin 的 加速度
- 并发编程之Synchronized深入理解
- Java微服务可以和Go一样快吗?
- 值得推荐的13个 Jenkins 替代方案
- Spring Boot 把 Maven 干掉了
- 适用于应用开发的十大优秀Java IDE
- 用 Java 训练深度学习模型,原来可以这么简单!
- 阿里云一面:并发场景下的底层细节 - 伪共享问题
- 「跬步千里」详解 Java 内存模型与原子性、可见性、有序性
- 以 DEBUG 方式深入理解线程的底层运行原理
- Java 线程和操作系统的线程有啥区别?
- Java 集合框架体系总览
- Java 中为什么要设计包装类
- 读懂框架设计的灵魂—Java反射机制
- 从头捋了一遍 Java 代理机制,收获颇丰
- Java开发学习(五十)----MyBatisPlus快速开发之代码生成器解析
- Java开发学习(四十九)----MyBatisPlus更新语句之乐观锁
- Java开发学习(四十七)----MyBatisPlus删除语句之多记录操作
- Java开发学习(四十八)----MyBatisPlus删除语句之逻辑删除