List接口的实现类

List接口的常用实现类有ArrayList与LinkedList。
1、ArrayList类实现了可变的数组,允许保存所有元素,包括null,并可以根据索引位置对集合进行快速的随机访问;缺点是向指定的索引位置插入对象或删除对象的速度较慢。
2、LinkedList类采用链表结构保存对象。这种结构的优点是便于向集合中插入和删除对象,需要向集合中插入、删除对象时,使用LinkedList类实现的List集合的效率较高;但对于随机访问集合中的对象,使用LinkedList类实现List集合的效率较低。

使用List集合时通常声明为List类型,可通过不同的实现类来实例化集合。
例:分别通过ArrayList、LinkedList类实例化List集合,代码如下;
List接口的实现类

在上面的代码中,E可以是合法的Java数据类型。例如,如果集合中的元素为字符串类型,那么E可以修改为String。

例:在项目中创建类Gather,在主方法中创建集合对象,通过Math类的random()方法随机获取集合中的某个元素,然后移除数组中的索引位置是”2”的元素,最后遍历数组,输出移除后的元素。
List接口的实现类

运行结果如图所示;Math类的random()方法可获得一个0.0~1.0的随机数
List接口的实现类
说明:与数组相同,集合的索引也是从0开始。