当前位置:网站首页>3.List接口与实现类
3.List接口与实现类
2022-08-09 09:23:00 【过来我的小熊】
List接口与实现类
List子接口
特点:有序,有下标,元素可以重复
List接口继承了Collection接口,所以拥有Collection接口的方法,另外还有一些自己的方法
方法:
- void add(int index, Object o) 在index位置插入对象o
- boolean addAll(int index, Collection c) 将一个集合中的元素添加到此集合中的index位置
- Object get(int index) 返回集合中指定位置的元素
- List subList(int fromIndex, int toIndex) 返回fromIndex和toIndex之间的集合元素
- iterator() 迭代器
- listIterator() 列表迭代器,与Iterator的区别就是,listiterator可以向前或向后遍历,添加,删除,修改
- hasNext() 判断第一个元素是否存在
- nextIndex() 获取向后遍历元素下标
- hasPrevious() 判断最后一个元素是否存在
- previousIndex() 获取向前遍历元素下标
- indexof() 获取元素的下标
在添加基本类型时,系统会执行一个自动装箱操作,所以在删除基本类型数据时,需要把基本类型数据转为包装类
List实现类
- ArrayList【重点】:
- 数组结构实现,查询快,增删慢
- JDK1.2版本,运行效率快,线程不安全
- 遍历:迭代器
- 源码分析
- 数组的默认容量为10
- 注意:如果没有向集合中添加元素时,容量为0,在添加了一个元素之后,容量为10,每次扩容大小是原来的1.5倍
- elementData 存放元素的数组
- size 实时元素个数
- add() 添加元素
- Vector:
- 数组结构实现,查询快,增删慢
- JDK1.0版本,运行效率慢,线程安全
- 遍历:迭代器,枚举器
- 其他方法:firstElement(),lastElement(),elementAt()
- LinkedList:
- 双向链表结构实现,增删快,查询慢
ArrayList 与 LinkedList 之间的区别:(不同结构的实现方式)
- ArrayList:必须开辟连续空间,查询快,增删慢,采用数据结构实现
- LinkedList:无需开辟连续空间,查询慢,增删快,采用双向链表结构实现
边栏推荐
猜你喜欢
选择黑盒测试用例设计方法的综合策略方案总结
银联最新测试工程师笔试题目,你能得多少分?

"The camera can't be used" + win8.1 + DELL + external camera + USB drive-free solution

The era of Google Maps is over, how to view high-definition satellite image maps?

常用功能测试的检查点与用例设计思路

China to create a domestic "Google Earth" clarity scary

全球19级谷歌卫星地图免费查看下载

Anti App so层对抗分析
测试计划包括哪些内容?目的和意义是什么?

HD Satellite Map Browser
随机推荐
国产谷歌地球,地形分析秒杀同款地图软件
【机器学习】数据科学基础——机器学习基础实践(二)
MySQL查漏补缺(三) 计算字段
“摄像头用不了”+win8.1+DELL+外置摄像头+USB免驱的解决办法
Ovie map computer terminal and mobile terminal can not be used, is there any alternative map tool
What does the test plan include?What is the purpose and meaning?
高清卫星地图浏览器
AES/ECB/PKCS5Padding加解密
本体开发日记05-努力理解SWRL(RDF Concrete Syntax)
JMeter初探五-配置元件与参数化
这12个GIS软件一个比一个好用
第四讲 SVN
2.线程创建
银联最新测试工程师笔试题目,你能得多少分?
学习双向链表的心得与总结
测试计划包括哪些内容?目的和意义是什么?
功能自动化测试实施的原则以及方法有哪些?
白盒测试的概念、目的是什么?及主要方法有哪些?
What are the basic concepts of performance testing?What knowledge do you need to master to perform performance testing?
"The camera can't be used" + win8.1 + DELL + external camera + USB drive-free solution