Deque是双向队列,包含Queue的全部功能,同时添加了双向队列的特有实现
1、在第一个元素前添加元素:添加失败抛出异常 void addFirst(E e);
2、在最后的位置添加元素:添加失败抛出异常 void addLast(E e);
3、调用addFirst方法,添加成功返回true,否则抛出异常 boolean offerFirst(E e);
4、调用addLast方法,添加成功返回true,否则抛出异常 boolean offerLast(E e);
5、删除第一个元素,调用pollFirst方法,没有元素则抛出异常。 E removeFirst();
6、删除最后一个元素,调用pollLast方法,没有元素则抛出异常。 E removeLast();
7、推出第一个元素,并返回元素信息,没有数据返回null E pollFirst();
8、推出最后一个元素,并返回元素信息,没有数据返回null E pollLast();
9、获取第一个元素,并返回,没有元素则抛出异常。 E getFirst();
10、获取最后一个元素,并返回,没有则抛出异常 E getLast();
11、获取第一个元素,并返回,没有则返回null E peekFirst();
12、获取最后一个元素,并返回,没有则返回null E peekLast();
13、从第一个元素开始,删除第一次出现的元素,删除成功(存在)返回true,不存在返回false。 boolean removeFirstOccurrence(Object o);
14、从最后一个元素开始,删除第一次出现的元素,删除成功(存在)返回true,不存在返回false。 boolean removeLastOccurrence(Object o);
15、调用addFirst方法,结合pop可以用来实现堆栈的数据结构,后进先出。 void push(E e);
16、调用removeFirst方法 E pop();