ublic class LinkedList<E>
extends AbstractSequentialList<E>
implements List<E>, Deque<E>, Cloneable, Serializable
LinkedList类是一个比较特殊的类,它即实现了List接口,可以根据索引来随机访问集合中的元素。除此之外,它又实现了Deque接口,Deque接口是Queue接口的子接口,它代表一个双向队列,该接口中定义了一些可以双向操作队列的方法,所以,LinkedList不仅可以当成双向队列使用,也可以当成栈使用,因为该类里还包含了pop(出栈)和push(入栈)两个方法。 LinkedList通常用法示例:
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 @SuppressWarnings("unchecked")
publicstaticvoidtestLinkedList() {
LinkedList books = newLinkedList();
//将字符串元素加入到队列的尾部
books.offer("深圳");
//将一个字符串元素入栈
books.push("广东");
//将字符串元素加入到队列的头部
books.offerFirst("佛山");
System.out.println(books); //[佛山, 广东, 深圳]
for(inti = 0; i < books.size(); i ++) {
System.out.println(books.get(i));
}
//访问并不删除队列的第一个元素
System.out.println(books.peekFirst()); //佛山
//访问并不删除队列的最后一个元素
System.out.println(books.peekLast()); //深圳
//采用出栈的方式将第一个元素出队列
System.out.println(books.pop()); //佛山
//队列中第一个元素被删除
System.out.println(books); //[广东, 深圳]
//访问并删除队列的最后一个元素
System.out.println(books.pollLast()); //深圳
System.out.println(books); //[广东]
} |
|