zoukankan      html  css  js  c++  java
  • LinkedList为什么查询慢_源码查看_的特有功能

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

    List 接口的链接列表实现。实现所有可选的列表操作,并且允许所有元素(包括 null)。除了实现 List 接口外,LinkedList 类还为在列表的开头及结尾 getremoveinsert 元素提供了统一的命名方法。这些操作允许将链接列表用作堆栈、队列双端队列

    此类实现 Deque 接口,为 addpoll 提供先进先出队列操作,以及其他堆栈和双端队列操作。


     1 package com.jh.list;
     2 
     3 import java.util.LinkedList;
     4 
     5 
     6 public class jh_03_LinkedList为什么查询慢_源码查看_的特有功能 {
     7     /**
     8      * public class LinkedList<E>
     9      * extends AbstractSequentialList<E>implements List<E>,
    10      *  Deque<E>, Cloneable, SerializableList 接口的链接列表实现。
    11      *  实现所有可选的列表操作,并且允许所有元素(包括 null)。
    12      *  除了实现 List 接口外,LinkedList 类还
    13      *  为在列表的开头及结尾 get、remove 和 insert 
    14      *  元素提供了统一的命名方法。这些操作允许将链接列表
    15      *  用作堆栈、队列或双端队列。
    16 
    17      * @param args
    18      */
    19     public static void main(String[] args) {
    20         LinkedList list = new LinkedList();
    21         
    22         list.addFirst("a");// 在此列表的开头插入指定的元素。指定:addfirst(.)在deque参数中:e为要添加的元素。
    23         list.addFirst("b");
    24         list.addFirst("c");
    25         list.addFirst("d");
    26         
    27         list.addLast("ff");// 将指定的元素追加到此列表的末尾。此方法等效于添加。指定:addlast(.)在deque参数中:e为要添加的元素。
    28         
    29         System.out.println(list.getFirst());// 返回此列表中的第一个元素。由deque返回中的:getfirst()指定:此列表中的第一个元素抛出:nosuchelementexception-如果此列表为空。
    30         System.out.println(list.getLast());// 返回此列表中的最后一个元素。deque中指定的:getlast()返回:如果该列表为空,则此列表中的最后一个元素抛出:nosuchementException
    31         
    32         System.out.println(list.removeFirst());// 从此列表中移除并返回第一个元素。deque中指定的:emovefirst()返回:如果该列表为空,则该列表中的第一个元素抛出:nosuchementException
    33         System.out.println(list.removeLast());// 从此列表中移除并返回最后一个元素。deque中由:emovelast()指定的返回:此列表中的最后一个元素抛出:nosuchementException-如果此列表为空
    34     
    35         System.out.println(list.get(1));// 参数:要返回的元素的索引:此列表中指定位置的元素
    36         
    37         
    38         /*
    39          * Node<E> node(int index) {
    40         // assert isElementIndex(index);
    41 
    42         if (index < (size >> 1)) {
    43             Node<E> x = first;
    44             for (int i = 0; i < index; i++)
    45                 x = x.next;
    46             return x;
    47         } else {
    48             Node<E> x = last;
    49             for (int i = size - 1; i > index; i--)
    50                 x = x.prev;
    51             return x;
    52         }
    53     }
    54          */
    55         System.out.println(list);
    56     }
    57 }

    构造方法摘要

    LinkedList()
              构造一个空列表。
    LinkedList(Collection<? extends E> c)
              构造一个包含指定 collection 中的元素的列表,这些元素按其 collection 的迭代器返回的顺序排列。

     

    方法摘要
     boolean add(E e)
              将指定元素添加到此列表的结尾。
     void add(int index, E element)
              在此列表中指定的位置插入指定的元素。
     boolean addAll(Collection<? extends E> c)
              添加指定 collection 中的所有元素到此列表的结尾,顺序是指定 collection 的迭代器返回这些元素的顺序。
     boolean addAll(int index, Collection<? extends E> c)
              将指定 collection 中的所有元素从指定位置开始插入此列表。
     void addFirst(E e)
              将指定元素插入此列表的开头。
     void addLast(E e)
              将指定元素添加到此列表的结尾。
     void clear()
              从此列表中移除所有元素。
     Object clone()
              返回此 LinkedList 的浅表副本。
     boolean contains(Object o)
              如果此列表包含指定元素,则返回 true
     Iterator<E> descendingIterator()
              返回以逆向顺序在此双端队列的元素上进行迭代的迭代器。
     E element()
              获取但不移除此列表的头(第一个元素)。
     E get(int index)
              返回此列表中指定位置处的元素。
     E getFirst()
              返回此列表的第一个元素。
     E getLast()
              返回此列表的最后一个元素。
     int indexOf(Object o)
              返回此列表中首次出现的指定元素的索引,如果此列表中不包含该元素,则返回 -1。
     int lastIndexOf(Object o)
              返回此列表中最后出现的指定元素的索引,如果此列表中不包含该元素,则返回 -1。
     ListIterator<E> listIterator(int index)
              返回此列表中的元素的列表迭代器(按适当顺序),从列表中指定位置开始。
     boolean offer(E e)
              将指定元素添加到此列表的末尾(最后一个元素)。
     boolean offerFirst(E e)
              在此列表的开头插入指定的元素。
     boolean offerLast(E e)
              在此列表末尾插入指定的元素。
     E peek()
              获取但不移除此列表的头(第一个元素)。
     E peekFirst()
              获取但不移除此列表的第一个元素;如果此列表为空,则返回 null
     E peekLast()
              获取但不移除此列表的最后一个元素;如果此列表为空,则返回 null
     E poll()
              获取并移除此列表的头(第一个元素)
     E pollFirst()
              获取并移除此列表的第一个元素;如果此列表为空,则返回 null
     E pollLast()
              获取并移除此列表的最后一个元素;如果此列表为空,则返回 null
     E pop()
              从此列表所表示的堆栈处弹出一个元素。
     void push(E e)
              将元素推入此列表所表示的堆栈。
     E remove()
              获取并移除此列表的头(第一个元素)。
     E remove(int index)
              移除此列表中指定位置处的元素。
     boolean remove(Object o)
              从此列表中移除首次出现的指定元素(如果存在)。
     E removeFirst()
              移除并返回此列表的第一个元素。
     boolean removeFirstOccurrence(Object o)
              从此列表中移除第一次出现的指定元素(从头部到尾部遍历列表时)。
     E removeLast()
              移除并返回此列表的最后一个元素。
     boolean removeLastOccurrence(Object o)
              从此列表中移除最后一次出现的指定元素(从头部到尾部遍历列表时)。
     E set(int index, E element)
              将此列表中指定位置的元素替换为指定的元素。
     int size()
              返回此列表的元素数。
     Object[] toArray()
              返回以适当顺序(从第一个元素到最后一个元素)包含此列表中所有元素的数组。
    <T> T[]
    toArray(T[] a)
              返回以适当顺序(从第一个元素到最后一个元素)包含此列表中所有元素的数组;返回数组的运行时类型为指定数组的类型。
  • 相关阅读:
    Spark基本架构及原理
    深度剖析Spark分布式执行原理
    Spark的集群管理器
    基于Redis的开源分布式服务Codis
    RabbitMQ 概念
    分布式事务实现
    优酷 视频上传服务
    深入解析Java中volatile关键字的作用
    mysql in查询 结果乱序 引发的思考
    不安装oracle客户端,用plsql连接oracle
  • 原文地址:https://www.cnblogs.com/haizinihao/p/11644130.html
Copyright © 2011-2022 走看看