zoukankan      html  css  js  c++  java
  • LinkedList子类与Queue接口

    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、
  • 相关阅读:
    分清抽象类和接口的区别
    【Android界面实现】FragmentPagerAdapter与FragmentStatePagerAdapter使用详解与区别
    Android多线程----异步消息处理机制之Handler详解
    Android中关于Handler的若干思考
    Axure Base 09 带遮罩层的弹出框
    Axure Base 08 动态面板的用途
    Axure Base 07 元件使用思路的补充
    Axure Base 03
    Axure Base 02
    Axure Base 01
  • 原文地址:https://www.cnblogs.com/alsf/p/6220944.html
Copyright © 2011-2022 走看看