【java】学习路径25-ArrayList类,Vector类,LinkedList类的使用和区别,Iterator迭代器的使用
ArrayList的使用
ArrayList类:可变化长度的数组。
与一般的数组不同的是,其长度不固定,可以添加任意类型的数据。
也可以添加不同类型的数据,但是一般不这么做。
ArrayList类位于java.util.ArrayList下,使用前需引用。
import java.util.ArrayList
初始化方法:
ArrayList al = new ArrayList();//容器
添加单个数据:
1-添加在ArrayList数组的最后:
al.add("remoo");
2-在指定索引处添加:
al.add(0,"jack");
ArrayList还支持添加一整个ArrayList数组:
al.addAll(al2);
获取ArrayList数组:
i为数组索引。
al.get(i)
需要注意的点:
读取int等数值类型进行数学运算的时候,我们必须需要进行强制类型转换。
以下两种操作是错误的:
ArrayList ck = new ArrayList();
ck.add(11);
ck.add(123);
ck.add(442);
int result1 =0;
for (Object ob : ck)
result1+=ob;
System.out.println("result:" + result1);
System.out.println(ck.get(0)+ck.get(1));
我们需要对ob进行强制类型转换。
在for循环语句中的代码修改为:
result1+=(int)ob;
移除数据有两种方法,通过索引移除或者通过内容移除。
al.remove(1);
al.remove("jack");
如果内容有重复,则会只移除索引值较小的那一个成员。
判断是否为空的ArrayList
al.isEmpty();
返回boolean。
判断是否包含某内容
al.contains("remoo");
迭代器Iterator的使用
作用:可以简单理解为遍历数组之用
优点:非常方便
缺点:一次性
初始化:需要指定对哪一个ArrayList所创建的遍历器。
Iterator iterator = al.iterator();
里边有next(),hasNext()等常用方法。
while(iterator.hasNext()){
System.out.println(iterator.next());
}
以上方法即可轻轻松松遍历所有的内容。
Vector类和ArrayList类的异同:
使用上是一模一样的。
Vector是线程安全的,但是ArrayList更高效适合用于单线程的程序当中。
ArrayList类和LinkedList类的异同:
后者适合频繁插入或删除数据,一般用于需求大量添改数据的业务。
后者有两种新的方法:
lks.addFirst(1);
lks.addLast(999);
【java】学习路径25-ArrayList类,Vector类,LinkedList类的使用和区别,Iterator迭代器的使用的更多相关文章
- Java中List,ArrayList、Vector,map,HashTable,HashMap区别用法
Java中List,ArrayList.Vector,map,HashTable,HashMap区别用法 标签: vectorhashmaplistjavaiteratorinteger ArrayL ...
- ArrayList、Vector、LinkedList的区别联系?
1.ArrayList.Vector.LinkedList类都是java.util包中,均为可伸缩数组. 2.ArrayList和Vector底层都是数组实现的,所以,索引数据快,删除.插入数据慢. ...
- ArrayList、Vector、LinkedList的特点和区别
ArrayList.Vector.LinkedList类均在java.util包中,均为可伸缩数组. 1)ArrayList和Vector都是基于存储元素的Object[] array来实现的,它们会 ...
- ArrayList、Vector和LinkedList的区别
ArrayList.Vector和LinkedList类均在java.util包下,均为可伸缩数组,即可以动态改变长度的数组 ArrayList和Vector都是基于存储元素的Object[] arr ...
- ArrayList 、Vector 和 LinkedList 有什么区别?
ArrayList.Vector .LinkedList 类均在java.util 包中,均为可伸缩数组,即可以动态改变长度的数组. ArrayList 和 Vector 都是基于存储元素的 Obje ...
- List接口实现类-ArrayList、Vector、LinkedList集合深入学习以及源代码解析
学习List接口实现类 ArrayList Vector LinkedList List接口的实现类中最经常使用最重要的就是这三个:ArrayList.Vector.LinkedList. JDK ...
- Java ArrayList、Vector和LinkedList等的差别与用法(转)
Java ArrayList.Vector和LinkedList等的差别与用法(转) ArrayList 和Vector是采取数组体式格式存储数据,此数组元素数大于实际存储的数据以便增长和插入元素,都 ...
- Java学习路径及练手项目合集
Java 在编程语言排行榜中一直位列前排,可知 Java 语言的受欢迎程度了. 实验楼上的[Java 学习路径]中将首先完成 Java基础.JDK.JDBC.正则表达式等基础实验,然后进阶到 J2SE ...
- Java容器类List、ArrayList、Vector及map、HashTable、HashMap的区别与用法
Java容器类List.ArrayList.Vector及map.HashTable.HashMap的区别与用法 ArrayList 和Vector是采用数组方式存储数据,此数组元素数大于实际存储的数 ...
- Java集合(2)——深入理解ArrayList、Vector和LinkedList
回顾 Java集合主要分为两个体系结构,Collection和Map.这篇博客主要介绍Collection子接口List下的三个经常使用的实现类:ArrayList.Vector和LinkedList ...
随机推荐
- 基于BPM的低代码开发平台应具备什么功能
一个BPM平台应该具备什么样的功能 用户在选型BPM软件的时候往往不知道该关注哪些功能,什么样的BPM软件能满足国内企业应用需求,笔者从多年BPM研发和实施经验提炼了中国特色BPM应该具备的功能 ...
- 1.4 操作系统的其余功能 -《zobolの操作系统学习札记》
1.4 操作系统的其余功能 操作系统除了虚拟化.并发.存储管理三个主要功能,还有许多子功能,我主要介绍几种常见的功能比如 目录 1.4 操作系统的其余功能 稳定性 高性能 隔离保护 易用性(可视化) ...
- SAP 定义客户端
SCC4 定义客户端 点击新建条目按钮 Client(客户端) R 200 Client Name(客户端名称) O City(城市) R Logical system(逻辑系统) R ...
- 程序员必备,一款让你提高工作效率N倍的神器uTools
下载地址:https://www.aliyundrive.com/s/f7PU7QxdxEz uTools 是什么? uTools = your tools(你的工具集) uTools 是一个极简.插 ...
- idea启动java Maven项目,出现" java: 程序包xxxx不存在"
解决办法如下:将idea的构建和运行托管到maven下面
- Object类中wait带参方法和notifyAll方法和线程间通信
notifyAll方法: 进入到Timed_Waiting(计时等待)状态有两种方式: 1.sleep(long m)方法,在毫秒值结束之后,线程睡醒,进入到Runnable或BLocked状态 2. ...
- 阻塞赋值-非阻塞赋值(LUT,FDC,BUF...)
一.看RTL级综合网络 1.1 FDC FDPE FDRE FDSE均是XILINX FPGA片上资源中四种不同的触发器,具体功能可直接百度 1.2 LUT是实现组合逻辑功能的一张真值表,根据输入值直 ...
- @Document注解与Lombok的区别
- 弹性布局( display: flex;)
参考: https://www.cnblogs.com/hellocd/p/10443237.html
- 非root源码安装gcc和cmake
一.安装cmake 1.下载cmale 下载地址:https://cmake.org/files tar -zxvf cmake-3.19.8.tar.gz cd cmake-3.19.8/ ./co ...