ArrayList基础知识

ArrayList是动态数组,适合不确定数据元素数量的情况。它实现了ICollection和IList接口,提供多种构造方法。基础数据类型不可直接存储,需转换为对象。初始化包括直接创建和带初始容量的方式。常用方法包括添加、删除、获取、修改元素,以及搜索、检查空和获取大小等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ArrayList就是传说中的动态数组,既然是动态数组,它就可以动态的增加和减少元素,可以灵活的设置数组的大小。

那么,什么时候使用Array(数组),什么时候使用ArrayList?

当我们不知道到底有多少个数据元素的时候,就可使用ArrayList;如果知道数据集合有多少个元素,就用数组。

此外,它还实现了ICollection和IList接口。

ArrayList类支持3个构造方法:

Arraylist()  这个构造方法构造了一个空的链表。

ArrayList(Collection<? extends E> c)  这个构造方法构造了一个包含指定元素集合的链表,注意,这里的字符E是一个标记,用来表示集合中元素的类型。至于具体是什么类型,需要你在使用这个构造方法的时候来指定。

ArrayList(int initialCapacity)  这是第三个构造方法,构造了一个指定大小但内容为空的链表。initialCapacity参数就是初始容量大小。

举例来说,如果你要创建一个空的数组链表,用来存放String类型的对象,那么你可以像下面这样做:

ArrayList<String> list = new ArrayList<String>();

如果你需要创建一个指定初始容量的数组链表,你可以像下面这样做:

ArrayList<Integer> list = new ArrayList<Integer>(7);

注意:ArrayList类只支持对象类型,不支持 基础数据类型。就是说ArrayList对象只能存放对象,不能存放基础数据类型的数据。

初始化ArrayList的两种方法

方式一:
    ArrayList list = new ArrayList();
    String str01 = String(“str01”);
    String str02 = String(“str02”);
     list.add(str01);
    list.add(str02);
  方式二:
    ArrayList list = new ArrayList(){{add(“str01”); add(“str02”);}};

下面是总结了一些比较常用的ArrayList类成员方法:

增加元素到链表中
boolean add(Element e)
增加指定元素到链表尾部.
void add(int index, Element e)
增加指定元素到链表指定位置.
从链表中删除元素
void clear()
从链表中删除所有元素.
E remove(int index)
删除链表中指定位置的元素.
protected void removeRange(int start, int end)
删除链表中从某一个位置开始到某一个位置结束的元素。
获取链表中的元素
E get(int index)
获取链表中指定位置处的元素.
Object[] toArray()
获取一个数组,数组中所有元素是链表中的元素.(即将链表转换为一个数组)
修改某个元素
E set(int index, E element)
将链表中指定位置上的元素替换成新元素。
搜索元素
boolean contains(Object o)
如果链表包含指定元素,返回true.
int indexOf(Object o)
返回元素在链表中第一次出现的位置,如果返回-1,表示链表中没有这个元素。

int lastIndexOf(Object o)

返回元素在链表中最后一次出现的位置,如果返回-1,表示链表中没有这个元素。
检查链表是否为空
boolean isEmpty()
返回true表示链表中没有任何元素.
获取链表大小
int size()
返回链表长度(链表包含元素的个数).

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值