ArrayList集合的简单使用以及理解。

1 篇文章 0 订阅
1 篇文章 0 订阅

ArrayList(集合)

底层:是一个可变的动态数组结构,ArrayList是基于数组实现的,其容量能自动增长,
当调用一个空参构造创建一个集合时,其底层会初始化一个长度为0的数组结构,当添加第一个元素时其底层会初始化一个长度为10的数组数据结构。但其集合的长度是1(这里的集合长度指的是那个用size()方法得到的长度,所以这个长度是随着集合中的元素增多而增长减少而减少的,但其数组数据结构在集合长度没有超过时,是不会进行变化的。),底层的数组数据结构我们是看不到的,但其是确确实实存在的。
当集合中的元素增加至数组数据结构的长度时,数组数据结构长度会按1.5倍增长,并且将原来集合中的元素复制进新集合中,当下次元素再次到达数组数据结构长度时会按同样的方法进行扩容并将元素进行复制。因此,在这个过程中会产生垃圾占用内存。
(所以当知道要创建一个多长的集合时建议调用ArrayList(int initialCapacity)这个构造方法,这个构造方法会创建一个有初始容量的集合。就不用多次进行扩容然后复制元素,这样可以减少内存的消耗。)
ArrayList不是线程安全的,只能用在单线程环境下。如果多个线程同时访问一个ArrayList实例,而其中至少一个线程从结构上修改了列表,那么它必须保持外部同步。

ArrayLis的API

(下面只是常用的方法)
构造方法:
ArrayList()空参构造,构造一个初始容量为 10 的空列表
ArrayList(int initialCapacity)构造一个具有指定初始容量(initialCapacity)的空列表
成员方法:
1.增
boolean add(E e)在集合的末尾添加一个元素并返回布尔值(true代表添加成功,false代表添加失败)。
void add(int index,E element)在指定索引位置插入元素
2.删
boolean remove(String str)删除指定元素并返回布尔值(true代表删除成功,false代表删除失败)。
E remove(int index)删除指定索引对应的值,并返回所删除的值。
void clear()移除此列表中的所有元素.
3.改
E set(int index , E element)更改指定位置上的元素,并返回更改前在此位置上的元素。
4.查
E get(int index)返回指定索引上的元素。
5.获取集合的长度
int size()返回集合中的元素个数。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值