2014年4月5日 java集合框架总结2--List接口及其子类

List接口

Collection接口的子接口,可以使用Collection中全部方法。

有序集合,元素有索引,元素可以重复

List:特有的常见方法:有一个共性特点就是都可以操作角标。
1,添加
    void add(index,element):
   boolean addAll(int index, Collection c):

2,删除;
    Object remove(index):

3,修改:
    Object set(index,element):

4,获取:
    Object get(index):

    int indexOf(object):

    int lastIndexOf(object):

    List subList(from,to):

import java.util.ArrayList;
import java.util.List;

/**
 * List接口及其子类
 * 2014-4-6
 * @author Administrator
 *
 */
public class ListDemo {

    /**
     * @param args
     */
    public static void main(String[] args) {
        List l1=new ArrayList();
        List l2=new ArrayList();
        show(l1,l2);

    }
    public static void show(List l1,List l2){
        //添加元素 
        l1.add(0, "123");
        l1.add(1, "mno");
        l1.add(2, "abc");
        l1.add(3, "mno");
        System.out.println(l1);

        l2.add("789");
        l2.add("456");
        l2.addAll(1,l1 );
        System.out.println(l2);

        //删除
        l2.remove(2);
        System.out.println(l2);

        //修改
        l2.set(4, "ijk");
        System.out.println(l2);

        //获取
        l2.add(3,"ijk");
        System.out.println(l2);
        System.out.println(l2.get(3));
        System.out.println(l2.indexOf("456"));
        //返回此列表首次出现元素的位置
        System.out.println(l2.indexOf("ijk"));
        //返回此列表最后出现元素的位置
        System.out.println(l2.lastIndexOf("ijk"));
        //返回从索引1开始(包含)到索引2位置前
        List l3=l2.subList(1, 4);
        System.out.println(l3);
    }

}

程序运行结果

[123, mno, abc, mno]
[789, 123, mno, abc, mno, 456]
[789, 123, abc, mno, 456]
[789, 123, abc, mno, ijk]
[789, 123, abc, ijk, mno, ijk]
ijk
-1
3
5
[123, abc, ijk]
ListIterator

Iterator的子接口,专供List接口使用

元素所在容器容器有索引,可以逆向遍历

特有方法:

boolean hasPrevious()

Object previous()

void add(element)

List接口下的常用集合类

Vector:内部是数组数据结构,多个线程是同步的。增删,查询都很慢!(同步是以牺牲效率为代价的)
ArrayList:内部是数组数据结构,多个线程是不同步的。替代了Vector。查询的速度快。
LinkedList:内部是链表数据结构,多个线程是不同步的。增删元素的速度很快。

Vector类下的子类Stack

Stack:内部是栈数据结构,先进后出

posted @ 2014-04-06 19:05  shangshicc  阅读(190)  评论(0编辑  收藏  举报