Java LinkedList
LinkedList是基于双向链表实现的,先看构造方法和方法
Constructor Summary
Constructors Constructor Description LinkedList()Constructs an empty list.LinkedList(Collection<? extends E> c)Constructs a list containing the elements of the specified collection, in the order they are returned by the collection's iterator.
Method Summary
All MethodsInstance MethodsConcrete Methods Modifier and Type Method Description voidadd(int index,E element)Inserts the specified element at the specified position in this list.booleanadd(E e)Appends the specified element to the end of this list.booleanaddAll(int index,Collection<? extendsE> c)Inserts all of the elements in the specified collection into this list, starting at the specified position.booleanaddAll(Collection<? extends E> c)Appends all of the elements in the specified collection to the end of this list, in the order that they are returned by the specified collection's iterator.voidaddFirst(E e)Inserts the specified element at the beginning of this list.voidaddLast(E e)Appends the specified element to the end of this list.voidclear()Removes all of the elements from this list.Objectclone()Returns a shallow copy of thisLinkedList.booleancontains(Object o)Returnstrueif this list contains the specified element.Iterator<E>descendingIterator()Returns an iterator over the elements in this deque in reverse sequential order.Eelement()Retrieves, but does not remove, the head (first element) of this list.Eget(int index)Returns the element at the specified position in this list.EgetFirst()Returns the first element in this list.EgetLast()Returns the last element in this list.intindexOf(Object o)Returns the index of the first occurrence of the specified element in this list, or -1 if this list does not contain the element.intlastIndexOf(Object o)Returns the index of the last occurrence of the specified element in this list, or -1 if this list does not contain the element.ListIterator<E>listIterator(int index)Returns a list-iterator of the elements in this list (in proper sequence), starting at the specified position in the list.booleanoffer(E e)Adds the specified element as the tail (last element) of this list.booleanofferFirst(E e)Inserts the specified element at the front of this list.booleanofferLast(E e)Inserts the specified element at the end of this list.Epeek()Retrieves, but does not remove, the head (first element) of this list.EpeekFirst()Retrieves, but does not remove, the first element of this list, or returnsnullif this list is empty.EpeekLast()Retrieves, but does not remove, the last element of this list, or returnsnullif this list is empty.Epoll()Retrieves and removes the head (first element) of this list.EpollFirst()Retrieves and removes the first element of this list, or returnsnullif this list is empty.EpollLast()Retrieves and removes the last element of this list, or returnsnullif this list is empty.Epop()Pops an element from the stack represented by this list.voidpush(E e)Pushes an element onto the stack represented by this list.Eremove()Retrieves and removes the head (first element) of this list.Eremove(int index)Removes the element at the specified position in this list.booleanremove(Object o)Removes the first occurrence of the specified element from this list, if it is present.EremoveFirst()Removes and returns the first element from this list.booleanremoveFirstOccurrence(Object o)Removes the first occurrence of the specified element in this list (when traversing the list from head to tail).EremoveLast()Removes and returns the last element from this list.booleanremoveLastOccurrence(Object o)Removes the last occurrence of the specified element in this list (when traversing the list from head to tail).Eset(int index,E element)Replaces the element at the specified position in this list with the specified element.intsize()Returns the number of elements in this list.Spliterator<E>spliterator()Creates a late-binding and fail-fastSpliteratorover the elements in this list.Object[]toArray()Returns an array containing all of the elements in this list in proper sequence (from first to last element).<T> T[]toArray(T[] a)Returns an array containing all of the elements in this list in proper sequence (from first to last element); the runtime type of the returned array is that of the specified array
构造方法LinkedList()//创建一个空LinkedList
LinkedList(Coolection<? extends E>)//创建一个有内容的LinkedList,可以将别的LinkedList复制进来(不是引用)
LinkedList增加和删除元素都是常数时间(假设位置已知)
add(int index,E element)向索引位置插入,线性时间
add(E e)默认队尾
addFirst(E e)插入队头
addList(E e)插入队尾
removeFirst(E e)删除队头元素
removeLast(E e)删除队尾元素
LinkedList查询修改元素是线性时间,这点不如ArrayList但是LinkedList的增加和删除是常数时间,不需要移动其他元素的位置。
Java LinkedList的更多相关文章
- java LinkedList(链表)
LinkedList也像ArrayList一样实现了基本的List接口,但是它执行某些操作(在List的中间插入和移除)时比ArrayList更高效,但在随机访问方面却要逊色一些 LinkedList ...
- Java LinkedList add vs push
Java LinkedList add 是加在list尾部. LinkedList push 施加在list头部. 等同于addFirst.
- Java LinkedList【笔记】
Java LinkedList[笔记] LinkedList LinkedList 适用于要求有顺序,并且会按照顺序进行迭代的场景,依赖于底层的链表结构 LinkedList基本结构 LinkedLi ...
- java LinkedList (详解)
Java 链表(LinkedList) 一.链表简介 1.链表 (Linked List) 是一种常见的基础数据结构,是一种线性表,但是链表不会按线性表的顺序存储数据,而是每个节点里存到下一个节点的地 ...
- Java LinkedList 源码剖析
LinkedList同时实现了List接口和Deque接口,也就是说它既可以看作一个顺序容器,又可以看作一个队列(Queue),同时又可以看作一个栈(Stack).这样看来,LinkedList简直就 ...
- java@ LinkedList 学习
package abc.com; import java.util.LinkedList; public class TestLinkedList { static void prt(Object o ...
- JAVA LinkedList和ArrayList的使用及性能分析
第1部分 List概括List的框架图List 是一个接口,它继承于Collection的接口.它代表着有序的队列.AbstractList 是一个抽象类,它继承于AbstractCollection ...
- [Java] LinkedList / Queue - 源代码学习笔记
简单地画了下 LinkedList 的继承关系,如下图.只是画了关注的部分,并不是完整的关系图.本博文涉及的是 Queue, Deque, LinkedList 的源代码阅读笔记.关于 List 接口 ...
- Java LinkedList 源码分析
简介 LinkedList 是一个常用的集合类,用于顺序存储元素. LinkedList 经常和 ArrayList 一起被提及.大部分人应该都知道 ArrayList 内部采用数组保存元素,适合用于 ...
- Java LinkedList特有方法程序小解 && 使用LinkedList 模拟一个堆栈或者队列数据结构。
package Collection; import java.util.LinkedList; /* LinkedList:特有的方法 addFirst()/addLast(); getFirst( ...
随机推荐
- 前端通过js-xlsx获取Excel完整数据
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- pythoner国内比较快 的 镜像源
pythoner国内比较快 的 镜像源 pip install pyqt5 = 5.9 -i https://pipy pip使用过程中的痛苦,大家相必都已经知道了,目前豆瓣提供了国内的pypi源, ...
- 机器学习进阶-背景建模-(帧差法与混合高斯模型) 1.cv2.VideoCapture(进行视频读取) 2.cv2.getStructureElement(构造形态学的卷积) 3.cv2.createBackgroundSubtractorMOG2(构造高斯混合模型) 4.cv2.morpholyEx(对图像进行形态学的变化)
1. cv2.VideoCapture('test.avi') 进行视频读取 参数说明:‘test.avi’ 输入视频的地址2. cv2.getStructureElement(cv2.MORPH_E ...
- 08-认识margin
1.margin margin:外边距的意思.表示边框到最近盒子的距离. /*表示四个方向的外边距离为20px*/ margin: 20px; /*表示盒子向下移动了30px*/ margin-top ...
- Bootstarp 模版网站
最佳Bootstrap模版 https://colorlib.com/wp/cat/bootstrap/ https://www.jianshu.com/p/4a116cf24a05
- HBASE小结--待续使用
构建在HDFS之上的分布式,面向列的存储系统,使用zookeeper做协同服务,在需要实时读写和随机访问超大规模数据集的时候使用 缺点:非关系型,不支持SQL,数据类型单一(字符串,无类型),之支持单 ...
- while 循环居然可以用else
while 循环居然可以用else python 3 while a<50: print a a=a+1 else: print"over."
- Java IO中转换流的作用
在<Java网络编程>中,有这样一段话: ”Reader和Writer最重要的子类是InputStreamReader和OutputStreamWriter类. InputStreamRe ...
- mysql decimal
可能做程序的人都知道,float类型是可以存浮点数(即小数类型),但是float有个坏处,当你给定的数据是整数的时候,那么它就以整数给你处理. 这样我们在存取货币值的时候自然遇到问题,我的defaul ...
- webstorm添加多个项目
在webstorm工作目录下,添加其他项目,不用每个项目打开一个webstorm,刚开始使用webstorm的时候,每次打开一个项目的时,都要打开一个开发界面,在这几个窗口之间来回的切换,有一天真的感 ...