java LinkedList

LinkedLiset的底层是以链表存储

LinkedList部分方法示例:

 1 import java.util.LinkedList;
 2
 3 public class Test {
 4     public static void main(String[] args) {
 5         LinkedList a1 = new LinkedList();
 6         LinkedList a3 = new LinkedList();
 7
 8         a1.add("A");a1.add(1,"B");a1.add("C");
 9         a1.addFirst("first");a1.addLast("last");
10
11         System.out.println(a1.offer("last"));
12         System.out.println(a1);
13
14         a1.removeFirst();a1.removeLast();
15         System.out.println(a1.removeLast());
16         System.out.println(a1);
17
18         LinkedList a2 = new LinkedList(a1);
19         System.out.println("+++++++++++++++++++++++++++++++++++++++++++");
20         System.out.println(a2);
21
22
23
24
25         System.out.println("找到链表的表头element" + " " + a2.element());
26         System.out.println("a2内容:" + " "+a2);
27         System.out.println("找到但不删除链表的头peek" + " " + a2.peek());
28         System.out.println("a2内容:" + " "+a2);
29
30         System.out.println( "检索并移除表头remove" + " " + a2.peek());
31         System.out.println("a2内容:" + " "+a2);
32         System.out.println("找到并删除此链表的头poll" + " " + a2.poll());
33         System.out.println("a2内容:" + " "+a2);
34
35         a3.add("A");a3.add("B");a3.add("C");
36         int j = a3.size();
37         for(int i = 0;i < j;i++) {
38             System.out.print(a3.poll() + " ");
39             System.out.println("执行第" + i + "次" + a3);
40         }
41         System.out.println(" ");
42         System.out.println(a3);
43
44
45
46     }
47 }
48
49 /*
50 public void addFirst(E e)
51 public void addLast(E e)
52 public boolean offer(E e)
53 public E removeFirst()
54 public E removeLast()
55 public E element()
56 public E peek()
57 public E poll()
58 public E remove()
59
60 for(int i = 0;i < (a3.size()+ 2);i++) {
61   System.out.print(a3.poll() + " ");
62     System.out.println("执行第" + i + "次" + a3);
63 }
64
65 1.public boolean offer()与public void addLast()除了返回值不同还有别的什么不同之处么?
66 */
时间: 2024-12-11 18:20:03

java LinkedList的相关文章

基于Java LinkedList,实现Android大数据缓存策略

import java.util.HashMap; import java.util.LinkedList; /* * 基于Java LinkedList,实现Android大数据缓存策略 * 作者:Zhang Phil * 原文出处:http://blog.csdn.net/zhangphil * * 实现原理:原理的模型认为:在LinkedList的头部元素是最旧的缓存数据,在LinkedList的尾部是最新的缓存数据. * 在一个LinkedList(类型C的链表)维护一个存储堆栈,添加元

Java LinkedList的ListIterator

Java LinkedList的ListIterator @author ixenos ListIterator<E>是继承自Iterator<E>的接口 故,ListIterator注意点: 1.迭代器不存储所有元素的引用,只有两个指针,一个指向上一个返回得到的元素,另一个下一个未涉足的元素: 2.迭代开始前先同步内外modCount,迭代过程中检查是否同步,如果外部结构改变,则迭代快速失败(fast-fails机制): 3.ListIterator可以算半个LinkedList

java LinkedList(链表)

LinkedList也像ArrayList一样实现了基本的List接口,但是它执行某些操作(在List的中间插入和移除)时比ArrayList更高效,但在随机访问方面却要逊色一些 LinkedList还添加了可以使其用作栈,队列或双端队列的方法 这些方法有些彼此之间只是名称有差异,或者只是存在些许差异,以使得这些名字在特定用法的上下文环境中更加适用(特别使在Queun中),例如 getFirst()和element()完全一样,它们都返回列表的头(第一个元素),而不是移除它,如果List为空,则

Java - LinkedList源码分析

java提高篇(二二)---LinkedList 一.概述 LinkedList与ArrayList一样实现List接口,只是ArrayList是List接口的大小可变数组的实现,LinkedList是List接口链表的实现.基于链表实现的方式使得LinkedList在插入和删除时更优于ArrayList,而随机访问则比ArrayList逊色些. LinkedList实现所有可选的列表操作,并允许所有的元素包括null. 除了实现 List 接口外,LinkedList 类还为在列表的开头及结尾

java LinkedList的使用方法介绍

LinkedList类是双向列表,列表中的每个节点都包含了对前一个和后一个元素的引用. LinkedList的构造函数如下 1. public LinkedList():  --生成空的链表 2. public LinkedList(Collection col):  复制构造函数 1.获取链表的第一个和最后一个元素 [java] view plaincopy import java.util.LinkedList; public class LinkedListTest{ public sta

JAVA LinkedList和ArrayList的使用及性能分析

第1部分 List概括List的框架图List 是一个接口,它继承于Collection的接口.它代表着有序的队列.AbstractList 是一个抽象类,它继承于AbstractCollection.AbstractList实现List接口中除size().get(int location)之外的函数.AbstractSequentialList 是一个抽象类,它继承于AbstractList.AbstractSequentialList 实现了“链表中,根据index索引值操作链表的全部函数

[Java] LinkedList / Queue - 源代码学习笔记

简单地画了下 LinkedList 的继承关系,如下图.只是画了关注的部分,并不是完整的关系图.本博文涉及的是 Queue, Deque, LinkedList 的源代码阅读笔记.关于 List 接口的笔记,可以参考上一篇博文 List / ArrayList - 源代码学习笔记 Queue 1. 继承 Collection 接口,并提供了额外的插入.提取和查看元素的方法.新增的方法都有两种形式:当操作失败时,抛出异常或者返回一个特殊值.特殊值可以是 null 或者 false ,这取决于方法本

Java LinkedList基础篇

好久没用LinkedList,发现好多基础的东西都不会了,所以特别写这篇来总结一下关于LinkedList的基本用法. java.util class LinkedList<E> 构造函数: public LinkedList(); 创建一个空的链表. public LinkedList(Collection<? extends E> c); 按照已有集合的顺序来构造链表. 常用方法: public E getFirst(); 返回链表的第一个元素. public E getLas

Java LinkedList特有方法程序小解 &amp;&amp; 使用LinkedList 模拟一个堆栈或者队列数据结构。

package Collection; import java.util.LinkedList; /* LinkedList:特有的方法 addFirst()/addLast(); getFirst()/getLast(); removeFirst()/removeLast(); 若链表为空,抛出 没有这个元素异常/NoSuchElementException 但是 JDK1.6 版本以后出现了替代方法: offerFirst()/offerLast(); peekFirst()/peekLas