ArrayList实现类

本文介绍了ArrayList类的逻辑结构、特点、存储方式以及与数组的区别。详细讲解了ArrayList的初始化、常见方法如add()、addAll()、get()等,并探讨了其扩容机制,包括无参和有参构造时的情况,最后给出了部分核心代码分析。
摘要由CSDN通过智能技术生成

今天,让我们一起走进ArrayList类,了解ArrayList类背后的故事

ArrayList类:

  1. 逻辑结构:首先我们要知道ArrayList类是实现了List接口,而
    List接口又继承了Collection接口。正是由于接口和继承的使用,使ArrayList类具有强大的能力和丰富的功能。

  2. 特点:①有序性允许重复

  3. 存储结构:内部利用了Object[]数组进行对元素的存储;

  4. 用处:ArrayList类对集合可以进行一系列操作(类似于Array类对数组进行一系列操作),并且由于存储结构的特点,相当于集合为加强版的数组(提供了比数组更多的操作)。

集合和数组的区别

1.集合比数组更为方便,并且提供了更多的操作。

2.数组长度固定,集合可以对长度进行扩容

3.数组运行速率较快,集合运行速率较慢(集合在数组外加了一系列逻辑相关的操作)

初始化(引用+创建)

1.非泛型

ArrayList list=new ArrayList()
list.add("小明");
list.add(23) ;       //可以添加任何类型值

可以创建任何Object子类元素集合。

2.泛型

ArrayList<String> list01=new ArrayList<String>();
list01.add("小飞");
//list01.add(23) ;     //不能为除String类型之外的任何类型

利用泛型创建集合对象,则类型为指定的泛型不能使用其他类型

注:当为无参构造时,传入的值为默认空数据,则不创建数组,只有进行一次添加元素时,才使传入值大于默认空数据,从而创建数组。

常见方法

  1. add()
    用处:向集合中添加指定元素
    参数:指定泛型的值
    返回:boolean类型的值
    注:默认添加的值都放于集合最后面

  2. addAll()
    用处:将一个集合的所有元素全部添加到另一个集合
    参数:Collection下的子类型
    返回:boolena类型的值

  3. get()
    用处:根据指定下标,得到该下标所对应的集合元素
    参数:int类型的index下标
    返回:集合中的元素

  4. size()
    用处:返回当前集合中元素的个数
    参数:无
    返回:int类型的值

  5. contains()
    用处:判断元素是否在该集合中
    参数:集合中的值
    返回:boolean类型的值,有返回true,否则返回false

  6. indexOf()
    用处:查找集合内指定元素的位置
    参数:集合中的指定元素
    返回:存在返回当前指定元素下标,不存在返回-1

  • 7
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值