(一) List下的一些常用方法:
add(int index,Object obj)------------向集合指定索引位置添加对象,其他对象的索引位置相对后移一位,索引位置从0开始。
addAll (int,Collection coll) ------------向集合指定索引位置添加指定集合中的所有对象。
remove (int index) ------------移除集合中指定索引位置的对象。
set (index,Object obj) ------------将集合中指定索引位置的对象替换成指定的对象。
get (int index ) -------------得到集合中指定索引位置的对象。
indexOf (Object obj) ------------获得集合中指定对象的索引位置,存在多个时返回第一个,不存在返回-1。
lastIndexOf (Object obj) ------------获得集合中指定对象的索引位置,存在多个时返回最后一个,不存在返回-1。
listIterator () ------------获得一个包含所有对象的ListIterator实例。
listIterator (int index) -------------获得一个包含从指定索引位置到最后的ListIterator实例。
subList (int formIndex,int toIndex )---截取从开始索引formIndex到结束索引toIndex的对象,重新生成一个List集合并返回。
(二)实现类:
List接口的常用实现类有ArrayLIst和LinkedList:
ArrayList:底层数据结构使用的是数组(数组长度是可变的百分之五十增加),查询快,增加和删除慢,线程不同步。
LinkedList:底层数据结构使用的是链表,查询较慢但是增加和删除快。
List <String> hanliu =new ArrayList<String>();//使用ArrayList实例化
List <String> daliu = new LinkedList<String>();//使用LinkedList实例化
(
三)一些使用例子:
增加,删除,查询和修改:
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.Iterator;
import java.util.List;
public class LinkedListDemo {
public static void main (String [] args){
String h="H", a="A", n="N", l="L", i="I", u="U";
List<String> list = new LinkedList<String>();
list.add(h);
list.add(n);
list.add(1,u);
list.set(1,a);
Iterator<String> it = list.iterator();
while (it.hasNext()) {
System.out.print(it.next());
}
System.out.print(" ");
List<String> list2 =new ArrayList<String>();
list2.add(l);
list2.add(i);
list2.add(i);
list2.add(u);
list2.remove(2);//删除了第二个i;
for (int j=0;j<list.size();j++){
System.out.print(list2.get(j));//利用get(int index)方法插叙
}
}
}