Java面向对象
Java异常
Java数组
Java常用类
Java集合
Java IO流
Java线程
Java反射
Socket编程
Java注解开发
Java GoF设计模式
HashMap
Java内存模型
Java线性表

Java中LinkedList详解

LinkedList底层是双向链表

单向链表

双向链表

LinkedList新增的方法

主要增加了针对头结点与尾结点进行操作的方法, 即针对第一个元素和最后一个元素进行操作的方法。

void:addFirst(E e) 添加到善

void:addLast(E e) 添加到尾部

E:element()返回第一个元素

E:getFirst() 返回第一个元素

E:getLast()返回最后一个元素

boolean:offer(E e) 把元素添加到尾部

boolean:offerFirst(E e) 添加到状况

boolean:offerLast(E e) 添加到尾部

E:peek() 返回第一个元素

E:peekFirst() 返回第一个元素

E:peekLast() 返回最后一个元素

E:poll() 删除第一个元素并返回

E:pollFirst() 删除第一个元素并返回

E:pollLast() 删除最后一个元素并返回

E:pop()删除第一个元素并返回

void:push(E e) 在头部添加元素

E:removeFirst() 删除第一个元素并返回

E:removeLast() 删除最后一个元素并返回

经常使用push( E ) / pop() 模拟栈, 栈的特点是先进后出/后进先出.   push( E )把元素添加到链表的头部,  pop()把链表头部的元素删除并返回。

使用offer( E ) / poll()  模拟队列,  队列的特点是先进先出, offer( E )添加元素是在链表的尾部添加,  poll() 是把链表的头部元素删除并返回。