LinkedList表示的是一个链表的操作类。定义如下:

public class LinkedList<E> extends  AbstractSequentialList<E>  implements List<E>, Deque<E>, Cloneable, Serializable

queue接口是collection的子接口,是队列操作。定义如下:

public interface Queue<E> extends  Collection<E>

linkList的方法:

本身大量扩充了Queue和List接口操作。所以对于链表的使用时,最好直接使用LinkList类完成操作。

package 类集;
import java.util.LinkedList;
public class test1{
public static void main(String args[]){
LinkedList<String> link = new LinkedList<String>() ;
link.add("A") ; // 增加元素
link.add("B") ; // 增加元素
link.add("C") ; // 增加元素
System.out.println("初始化链表:" + link) ;
link.addFirst("X") ; // 在开头增加数据
link.addLast("Y") ; // 在结尾增加数据
System.out.println("增加头和尾之后的链表:" + link) ;
}
};

返回结果:

初始化链表:[A, B, C]
增加头和尾之后的链表:[X, A, B, C, Y]

通过继承的Queue接口的方法,使用,获取表头等操作。

package 类集;
import java.util.LinkedList;
public class test1{
public static void main(String args[]){
LinkedList<String> link = new LinkedList<String>() ;
link.add("A") ; // 增加元素
link.add("B") ; // 增加元素
link.add("C") ; // 增加元素
System.out.println("1-1、element()方法找到表头:" + link.element()) ;
System.out.println("1-2、找完之后的链表的内容:" + link) ;
System.out.println("2-1、peek()方法找到表头:" + link.peek()) ;
System.out.println("2-2、找完之后的链表的内容:" + link) ;
System.out.println("3-1、poll()方法找到表头:" + link.poll()) ;
System.out.println("3-2、找完之后的链表的内容:" + link) ;
}
};

返回结果:

1-1、element()方法找到表头:A
1-2、找完之后的链表的内容:[A, B, C]
2-1、peek()方法找到表头:A
2-2、找完之后的链表的内容:[A, B, C]
3-1、poll()方法找到表头:A
3-2、找完之后的链表的内容:[B, C]

队列的先进先出。

实例2:

package 类集;
import java.util.LinkedList;
public class test1{
public static void main(String args[]){
LinkedList<String> link = new LinkedList<String>() ;
link.add("A") ; // 增加元素
link.add("B") ; // 增加元素
link.add("C") ; // 增加元素
System.out.print("以FIFO的方式输出:") ;
for(int i=0;i<=link.size()+1;i++){
System.out.print(link.poll() + "、") ;
}
}
};

返回结果:

以FIFO的方式输出:A、B、C、

LinkedList子类与Queue接口的更多相关文章

  1. Queue接口的实现类竟然有一个是LinkedList,一个是优先队列(同一个接口,只改了不同的实现类,附源码)

    输出是: Queue接口底层换一个实现类,照样的是调用Queue接口中的方法 import java.util.HashMap; import java.util.LinkedList; import ...

  2. Java中的集合(三)继承Collection的Queue接口

    Java中的集合(三)继承Collection的Queue接口 一.Queue介绍 Queue接口继承自Collection接口,是Java中定义的一种队列数据结构,元素是有序的(按插入顺序排序),先 ...

  3. Java集合类学习-LinkedList, ArrayList, Stack, Queue, Vector

    Collection List 在Collection的基础上引入了有序的概念,位置精确:允许相同元素.在列表上迭代通常优于索引遍历.特殊的ListIterator迭代器允许元素插入.替换,双向访问, ...

  4. Java中的队列:java.util.Queue接口

    队列是一种特殊的线性表,它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作. Queue接口与List.Set同一级别,都是继承了Collection接口.Linked ...

  5. 集合框架之Queue接口

    Queue接口 在处理元素前用于保存元素的 collection.除了基本的 Collection 操作外,队列还提供其他的插入.提取和检查操作.每个方法都存在两种形式:一种抛出异常(操作失败时),另 ...

  6. java中Queue接口

    Queue接口与List.Set同一级别,都是继承了Collection接口.LinkedList实现了Queue接 口.Queue接口窄化了对LinkedList的方法的访问权限(即在方法中的参数类 ...

  7. Java集合类——Set、List、Map、Queue接口

    目录 Java 集合类的基本概念 Java 集合类的层次关系 Java 集合类的应用场景 一. Java集合类的基本概念 在编程中,常需要集中存放多个数据,数组是一个很好的选择,但数组的长度需提前指定 ...

  8. Collection接口的子接口——Queue接口

    https://docs.oracle.com/javase/8/docs/api/java/util/Queue.html public interface Queue<E> exten ...

  9. 背水一战 Windows 10 (122) - 其它: 通过 Windows.System.Profile 命名空间下的类获取信息, 查找指定类或接口的所在程序集的所有子类和子接口

    [源码下载] 背水一战 Windows 10 (122) - 其它: 通过 Windows.System.Profile 命名空间下的类获取信息, 查找指定类或接口的所在程序集的所有子类和子接口 作者 ...

随机推荐

  1. FIM2010同步用户

    在需要进行同步的来源MA进行同步 在需要进行导入的来源进行导入

  2. OC中的深拷贝与浅拷贝

    深拷贝(deep copy)与浅拷贝(shallow copy)的定义一直是有争论的. 一种理解是: 所谓的浅拷贝, 就是不完全的拷贝 NSString *s = @"123"; ...

  3. 基于XMPP的IOS聊天客户端程序

    简介:XMPP协议是一种基于Socket长连接.以XML格式进行基本信息交换.C/S S/S多种架构的聊天协议 XMPPServer 基于XMPP协议的服务端(例如eJabber.OpenFire) ...

  4. node.js Tools for Visual Studio 介绍

    node.js Tools for Visual Studio简称NTVS 项目 安装包地址:https://nodejstools.codeplex.com 目前支持2012和2013

  5. OC中.pch文件的解释

      在IOS开发的项目中有一个Prefix.pch,.pch文件是什么?  Prefix.pch:扩展名.pch表示"precompiled header",这是一个你工程要用到的 ...

  6. Git详解之三 Git分支

    相关文档 — 更多 Git 基础培训.ppt GIT 使用经验.ppt GIT 介绍.pptx GIT 分支管理是一门艺术.docx Eclipse上GIT插件EGIT使用手册.docx git/gi ...

  7. .net C# 图片转Base64 Base64转图片

    //图片 转为 base64编码的文本 private void button1_Click(object sender, EventArgs e) { OpenFileDialog dlg = ne ...

  8. .net开发中常用的第三方组件

    .net开发中常用的第三方组件 2013-05-09 09:33:32|  分类: dotnet |举报 |字号 订阅     下载LOFTER 我的照片书  |   RSS.NET.dll RSS. ...

  9. Cloud9:解决ThinkPHP在C9上运行时连接数据库时报错"No such file or directory"的问题

    昨天尝试在c9上部署了一个ThinkPHP用于开发,但是当试图连接数据库时却出现了这样的问题.经过查找资料发现此问题是由于没有找到mysql.sock这个文件造成的(这个东西估计是mysql的连接线程 ...

  10. Linux:kill 进程

    在使用Linux时,出现端口占用.进程已启动(但处于不可控状态)情况时如何处理? 发现已知端口被占用时,可以使用netstat -apn | grep yourPort 来查看占用该端口的进程的pid ...