网站首页 > 技术文章 正文
在Java如果想要可以动态修改的数组,可以引入ArrayList类,今天小编将为大家带来大数据编程入门:Java ArrayList这篇文章为大家介绍ArrayList的使用方法。
一、Java ArrayList的概念及使用
1、Java ArrayList概念
ArrayList类是一个可以动态修改的数组,ArrayList类和普通数组的区别在于它没有固定的大小限制,我们可以添加或删除元素。
ArrayList继承AbstractList并实现List接口。
ArrayList类位于java.util包中,需要在使用前引入,语法格式如下:
import java.util.ArrayList; // 引入 ArrayList 类
ArrayList<E> objectName =new ArrayList<>(); // 初始化
E:泛型数据类型,用于设置ObjectName的数据类型,只能是引用数据类型。
ObjectName:对象名。
ArrayList是一个提供了添加、删除、修改和遍历等相关功能的数组队列。
2、添加元素
ArrayList类提供了许多有用的方法,可以使用add()方法将元素添加到ArrayList,示例如下:
运行结果:
3、访问元素
可以使用get()方法来访问在ArrayList中的元素,示例如下:
运行结果:
4、修改元素
可以使用set()方法来修改ArrayList中的元素,示例如下:
运行结果:
5、删除元素
可以使用 remove() 方法来删除 ArrayList 中的元素,示例如下:
运行结果:
6、计算大小
可以使用size()方法来计算ArrayList中的元素数量,示例如下:
运行结果:
7、迭代数组列表
ArrayList数组中的元素可以使用for来迭代,示例如下:
运行结果:
还可以使用for-each来迭代元素,示例如下:
运行结果:
8、其他的引用类型
ArrayList中的元素实际上是对象,在上面的示例中,数组列表中的元素是字符串String类型。
如果我们要存储其他类型,并且<E>只能是引用数据类型,那么我们需要使用基本类型的包装器类。
基本类型对应的包装类别如下:
基本类型 | 引用类型 |
boolean | Boolean |
byte | Byte |
short | Short |
int | Integer |
long | Long |
float | Sloat |
double | Double |
char | Character |
此外,BigInteger和BigDecimal用于高精度运算,BigInteger支持具有任意精度的整数,也是引用类型,但它们没有相应的基本类型。
ArrayList<Integer> li=new Arraylist<>(); // 存放整数元素
ArrayList<Character> li=new Arraylist<>(); // 存放字符元素
在以下示例使用ArrayList存储数字(使用Integer类型):
运行结果:
9、ArrayList排序
Collections类也是一个非常有用的类,它位于java.util包,提供的sort()方法可以对字符或数字列表进行排序。
以下示例对字母进行排序:
运行结果:
以下示例是对数字的排序:
运行结果:
二、Java ArrayList方法
以下列表是Java ArrayList 常用方法:
方法 | 描述 |
add() | 将元素插入到指定位置的 arraylist 中 |
addAll() | 添加集合中的所有元素到 arraylist 中 |
clear() | 删除 arraylist 中的所有元素 |
clone() | 复制一份 arraylist |
contains() | 判断元素是否在 arraylist |
get() | 通过索引值获取 arraylist 中的元素 |
indexOf() | 返回 arraylist 中元素的索引值 |
removeAll() | 删除存在于指定集合中的 arraylist 里的所有元素 |
remove() | 删除 arraylist 里的单个元素 |
size() | 返回 arraylist 里元素数量 |
isEmpty() | 判断 arraylist 是否为空 |
subList() | 截取部分 arraylist 的元素 |
set() | 替换 arraylist 中指定索引的元素 |
sort() | 对 arraylist 元素进行排序 |
toArray() | 将 arraylist 转换为数组 |
toString() | 将 arraylist 转换为字符串 |
ensureCapacity() | 设置指定容量大小的 arraylist |
lastIndexOf() | 返回指定元素在 arraylist 中最后一次出现的位置 |
retainAll() | 保留 arraylist 中在指定集合中也存在的那些元素 |
containsAll() | 查看 arraylist 是否包含指定集合中的所有元素 |
trimToSize() | 将 arraylist 中的容量调整为数组中的元素个数 |
removeRange() | 删除 arraylist 中指定索引之间存在的元素 |
replaceAll() | 将给定的操作内容替换掉数组中每一个元素 |
removeIf() | 删除所有满足特定条件的 arraylist 元素 |
forEach() | 遍历 arraylist 中每一个元素并执行特定操作 |
以上就是关于大数据编程入门:Java ArrayList的全部内容了,希望这篇文章能够帮助到大家~
猜你喜欢
- 2024-10-08 java常用数据判空、比较和类型转换
- 2024-10-08 集合框架-ArrayList源码分析(java集合框架源码解析)
- 2024-10-08 Python开发入门之列表-List(python列表的基本操作编程)
- 2024-10-08 如何在python各种列表中求最值?(如何在python各种列表中求最值的方法)
- 2024-10-08 List接口常用方法(list接口的常用方法)
- 2024-10-08 Python语法基础(6)集合(python中的集合)
- 2024-10-08 Java初学者学习任务总结「15」(java学习知识点路线)
- 2024-10-08 Sonar代码规范分析(sonar代码扫描规则及解决方案)
- 2024-10-08 最详细集合源码解析之ArrayList集合源码解析
- 2024-10-08 代码优雅之道——c#如何判空(c#判断输入是否为空)
- 10-02基于深度学习的铸件缺陷检测_如何控制和检测铸件缺陷?有缺陷铸件如何处置?
- 10-02Linux Mint 22.1 Cinnamon Edition 搭建深度学习环境
- 10-02AWD-LSTM语言模型是如何实现的_lstm语言模型
- 10-02NVIDIA Jetson Nano 2GB 系列文章(53):TAO模型训练工具简介
- 10-02使用ONNX和Torchscript加快推理速度的测试
- 10-02tensorflow GPU环境安装踩坑日记_tensorflow配置gpu环境
- 10-02Keye-VL-1.5-8B 快手 Keye-VL— 腾讯云两卡 32GB GPU保姆级部署指南
- 10-02Gateway_gateways
- 最近发表
-
- 基于深度学习的铸件缺陷检测_如何控制和检测铸件缺陷?有缺陷铸件如何处置?
- Linux Mint 22.1 Cinnamon Edition 搭建深度学习环境
- AWD-LSTM语言模型是如何实现的_lstm语言模型
- NVIDIA Jetson Nano 2GB 系列文章(53):TAO模型训练工具简介
- 使用ONNX和Torchscript加快推理速度的测试
- tensorflow GPU环境安装踩坑日记_tensorflow配置gpu环境
- Keye-VL-1.5-8B 快手 Keye-VL— 腾讯云两卡 32GB GPU保姆级部署指南
- Gateway_gateways
- Coze开源本地部署教程_开源canopen
- 扣子开源本地部署教程 丨Coze智能体小白喂饭级指南
- 标签列表
-
- cmd/c (90)
- c++中::是什么意思 (84)
- 标签用于 (71)
- 主键只能有一个吗 (77)
- c#console.writeline不显示 (95)
- pythoncase语句 (88)
- es6includes (74)
- sqlset (76)
- apt-getinstall-y (100)
- node_modules怎么生成 (87)
- chromepost (71)
- flexdirection (73)
- c++int转char (80)
- mysqlany_value (79)
- static函数和普通函数 (84)
- el-date-picker开始日期早于结束日期 (76)
- js判断是否是json字符串 (75)
- c语言min函数头文件 (77)
- asynccallback (87)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- java (73)
- js数组插入 (83)
- mac安装java (72)
- 无效的列索引 (74)