List(列表): List的特征是其元素以线性方式存储,集合中可以存放重复对象。
List接口主要实现类包括:
1、ArrayList() : 代表长度可以改变的数组。可以对元素进行随机的访问,向ArrayList()中插入与删除元素的速度慢。
2、Vector非常类似ArrayList,但是Vector是同步的。由Vector创建的Iterator,虽然和ArrayList创建的 Iterator是同一接口,但是,因为Vector是同步的,当一个 Iterator被创建而且正在被使用,另一个线程改变了Vector的状态(例如,添加或删除了一些元素),这时调用Iterator的方法时将抛出ConcurrentModificationException,因此必须捕获该异常。
code:继承ArrayList()
package com.test; import java.util.ArrayList;
import java.util.List; public class Test {
public static void main(String[] args) {
List<String> lists = null;
lists = new ArrayList<String>();//实例化的是子类ArrayList
lists.add("a");
lists.add("b");
lists.add("a");//list可重复放置元素
for(int i=;i<lists.size();i++){
System.out.println(lists.get(i));//get方法获取第几个元素
} lists.remove();//删除第0个
System.out.println("删除之后");
for(int i=;i<lists.size();i++){
System.out.println(lists.get(i));
} System.out.println("判断集合是否为空"+lists.isEmpty());//判断集合是否为空的方法
System.out.println("b是否存在:"+lists.indexOf("b"));//判断b是否存在,indexof存在返回位置,不存在返回-1 }
}
code1:vector子类
package com.test; import java.util.List;
import java.util.Vector; public class Test2 { public static void main(String[] args) {
List<String> lists = null;
lists = new Vector<String>();
lists.add("A");
lists.add("B");
for(int i=;i<lists.size();i++){
System.out.println(lists.get(i));
}
}
}