栈
import java.util.Stack;
Stack<Integer> stack = new Stack<>();
stack.push(10); //压栈
int poppedElement = stack.pop();// 弹出栈顶元素,并删除
int peekedElement = stack.peek();// 查看栈顶元素,但不删除
boolean empty = stack.isEmpty(); // 判断栈是否为空
int position = stack.search(20);// 搜索元素在栈中的位置
链表LinkedList
双端队列,可作为栈(FILO)、普通队列(FIFO)使用
LinkedList 继承了 AbstractSequentialList 类。
LinkedList 实现了 Queue 接口,可作为队列使用。
LinkedList 实现了 List 接口,可进行列表的相关操作。
LinkedList 实现了 Deque 接口,可作为队列使用。
LinkedList 实现了 Cloneable 接口,可实现克隆。
LinkedList 实现了 java.io.Serializable 接口,即可支持序列化,能通过序列化去传输。
LinkedList<Integer> list = new LinkedList();
list.add(E element);//在链表末尾添加一个元素。
list.addFirst(E element);//在链表开头添加一个元素。
list.addLast(E element);//在链表末尾添加一个元素。
list.get(int index);//获取指定位置的元素。
list.getFirst();//获取链表的第一个元素。
list.getLast(;//获取链表的最后一个元素。
list.remove(int index);//删除指定位置的元素。
list.removeFirst();//删除链表的第一个元素。
list.removeLast();//删除链表的最后一个元素。
boolean containsElement = list.contains("Element 1");//判断元素是否存在
list.size();//获取链表中元素的个数。
list.isEmpty();//检查链表是否为空。
list.clear();//清空链表中的所有元素。
int pos = list.indexOf(Object o);//返回第一个 o 所在下标
int pos = list.lastIndexOf(Object o);//返回最后一个 o 的下标