ArrayList子类是在使用List接口时最常使用的一个子类。该类利用数组实现List集合操作。ArrayList类定义如下:
public class ArrayList<E>
extends AbstractList<E>
implements List<E>,RandomAccess,Cloneable,Serializable { }
通过继承定义可以发现ArrayList子类实现List接口,同时又继承了AbstractList抽象类。其继承结构图如下:
范例:使用ArrayList实例化List接口
package cn.mldn.demo;
import java.util.ArrayList;
import java.util.List;
public class JavaCollectDemo{
public static void main(String [] args){
List<String> all = new ArrayList<String>(); //为List父接口进行实例化
all.add("qgdJava"); // 保存数据
all.add("qgdJava"); // 保存重复数据
all.add("www.baidu.com"); //保存数据
all.add("小齐要努力"); // 保存数据
System.out.println(all); // 直接输出集合对象
}
}
程序执行结果:
【qgdJava,qgdJava,www.baidu.com,小齐要努力】
本程序通过ArrayList子类为List接口进行实例化,并且调用了add()方法进行数据的添加。通过集合的输出结果可以发现,重复数据允许保存,集合中的数据保存顺序为添加时的顺序。
范例:集合操作方法
package cn.mldn.demo;
import java.util.ArrayList;
import java.util.List;
public class JavaCollectDemo{
public static void main(String [] args){
List<String> all = new ArrayList<String>();
System.out.println("集合是否为空?" + all.isEmpty() + ",集合元素个数:" + all.size() );
all.add("123456");
all.add("123456");
all.add("qgd");
all.add("你是谁");
System.out.println("数据存在判断:" + all.contains("qgd"));
all.remove("123456");
System.out.println("集合是否为空?" + all.isEmpty() + ",集合元素个数:" + all.size() );
System.out.println(all.get(1));
}
}
程序执行结果:
集合是否为空?true,集合元素个数:0
数据存在判断:true
集合是否为空?false,集合元素个数:3
qgd