JAVA ArrayList类摘要

java.lang.Object
-java.util.AbstractCollection
- java.util.AbstractList
- java.util.ArrayList
public class ArrayList
extends AbstractList
implements List, RandomAccess, Cloneable, Serializable
ArrayList类(存储对象的类,存储在java.util包中,需要在第一行导入)
ArrayList是泛型类,具有一个泛型类型E,创建一个ArrayList时,可以指定一个具体的类型来替换E

构造方法摘要:
ArrayList() //构造初始容量为10的空列表。
ArrayList(Collection<? extends E> c) //构造包含指定集合的元素的列表,按集合的迭代器返回这些元素的顺序。
ArrayList(int initialCapacity) //构造具有指定初始容量的空列表。

语法:ArrayList list = new ArrayList<>(); //AConcreteType可以是string,那样的话该ArrayList对象就可以存储字符串。
//也可以用于存储日期,ArrayList<java.util.Date> dates = new ArrayList<>();
"<>"中可以不给出具体类型,JDK7开始使用类型推导的特征,编译器从变量的声明中推导出类型。
一旦创建了数组,大小就固定了。ArrayList更灵活,无须提前给定大小

  java.util.ArrayList<E>
+ArrayList()                  //创建一个空列表
+add(e: E): void              //增加一个新元素e到列表末尾
+add(index: int, e: E): void  //增加一个新元素e到列表的指定下标处
+addAll(Collection<? extends E> c): boolean  //按指定集合的迭代器返回元素的顺序,将指定集合中的所有元素追加到此列表的末尾。
+addAll(int index, Collection<? extends E> c): boolean  //将指定集合中的所有元素插入到指定位置的列表(可选操作)
+clear(): void                //删除列表中所有元素
+clone(): Object              //返回此ArrayList实例的浅层副本。
+contains(o: Object): boolean //如果该列表包含指定元素o,返回true
+containsAll(Collection<?> c): boolean  //如果此集合包含指定集合中的所有元素,则返回true
+ensureCapacity(int minCapacity): void  //必要时增加此ArrayList实例的容量,以确保它至少可以容纳由最小容量参数指定的元素数。
+get(index: int): E           //返回该列表指定下标位置的元素
+indexOf(o: Object): int      //返回列表中第一个匹配的元素的下标,如果此列表不包含该元素,则返回-1。
+isEmpty(): boolean           //如果该列表不包含任何元素,则返回true
+iterator(): Iterator<E>      //以正确的顺序返回此列表中元素的迭代器。
+lastIndexOf(o: Object): int  //返回列表中最后一个匹配元素的下标,如果此列表不包含该元素,则返回-1。
+remove(o: Object): boolean   //去除列表中第一个匹配的元素。如果此列表包含指定元素,则返回true(如果此列表因调用而更改,则返回等效值)。
remove(int index): E          //删除此列表中指定位置的元素。将任何后续元素向左移动(从其索引中减去一个)return:从列表中删除的元素
+removeIf(Predicate<? super E> filter): boolean  //删除此集合中满足给定谓词的所有元素。
+removeRange(int fromIndex, int toIndex): protected void  //从该列表中删除其索引介于fromIndex、inclusive和toIndex、exclusive之间的所有元素。将任何后续元素向左移动(减少它们的索引)。此调用通过(toIndex-fromIndex)元素缩短列表。(如果toIndex==fromIndex,则此操作无效。)
+size(): int                  //返回列表中元素个数
+set(index: int, e: E): E     //用指定的元素替换此列表中指定位置的元素。返回之前指定位置上的元素
+toArray(): Object[]          //返回一个数组,该数组按正确顺序(从第一个元素到最后一个元素)包含此列表中的所有元素。










可以像使用数组一样使用ArrayList对象,但是两者还是有很多不同之处,如表:

操作数组ArrayList
创建数组/数组列表String[] a = new String [10]ArrayList list = new ArrayList()
访问元素a [index]list.get(index)
更新元素a [index] = “London”;list.set(index, “London”);
返回大小a.lengthlist.size()
添加一个新元素list.add(“London”)
插入一个新元素list.add(index, “London”)
删除一个元素list.remove(index) / list.remove(Object)
删除所有元素list.clear()

数组排序:java.util.Arrays.sort(array)
数组列表排序:java.util.Collections.sort(arrayList)

注意:存储在ArrayList中的元素必须是一种对象。不可使用如int型的基本数据类型来代替一个泛型类型。
可创建一个存储Integer对象的ArrayList:ArrayList listOfIntegers = new ArrayList<>();

  • ArrayList的大小是灵活的,所以无须提前给定它的大小。而创建一个数组时,它的大小必须给定
  • ArrayList包含许多有用的方法。比如可以使用contains方法来测试某个元素是否在列表中,如果使用数组,则需要额外编写代码来实现

可以和数组增强遍历方法一样,使用foreach循环来进行数组对象遍历:
for (elementType element: arrayList) { }
例如:for (Integer number: list) { }

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值