LinkedList

LinkedList的使用和ArrayList的使用几乎一样。但是它多了一些方法,例如:addFirst,addLast等等。

LinkedList是采用双向循环链表实现的。
利用LinkedList实现栈、队列、双向队列。

 

代码
package com.collection;

import java.util.LinkedList;

public class LinkedListTest {
public static void main(String[] args) {
LinkedList
<Point> ll = new LinkedList<Point>();

Point p1
= new Point(1, 4);
Point p2
= new Point(2, 3);
Point p3
= new Point(3, 2);
Point p4
= new Point(4, 1);

// boolean java.util.LinkedList.add(Point e)
// 将指定元素添加到此列表的结尾。
ll.add(p1);

// void java.util.LinkedList.add(int index, Point element)
// 在此列表中指定的位置index插入指定的元素element。
ll.add(1, p2);

// void java.util.LinkedList.addFirst(Point e)
// 将指定元素插入此列表的开头。
ll.addFirst(p4);

// void java.util.LinkedList.addLast(Point e)
// 将指定元素添加到此列表的结尾。
ll.addLast(p3);

// 调用void com.collection.IteratorTest.printElements(Collection<?> c)方法
// 以此获得Iterator,打印集合中的元素。
IteratorTest.printElements(ll);

//从头开始删,调用一次,将删除一个元素。
IteratorTest.deleteElements(ll);
IteratorTest.deleteElements(ll);
IteratorTest.deleteElements(ll);
System.out.println(
"删除元素以后");

// 再次打印
IteratorTest.printElements(ll);
}
}

        其实LinkedList就像一根绳子,要加入元素,就相当于把这个绳子剪断,然后再加入,这样并不影响大局,

但是ArrayList则不是了,它就是一个数组,如果在头部添加一个元素,那么下面的元素都要被移动。

 

posted @ 2010-12-22 21:53  meng72ndsc  阅读(403)  评论(0编辑  收藏  举报