一、java.util.Queue
Queue继承自Collection,所以队列本身也是一种集合。
队列可以保存一组元素,但是存储元素必须遵循先进先出(FIFO)的原则。
1、常用实现类:java.util.LinkedList
2、常用方法:
1、[boolean] offer(E e):入队操作,元素会被追加到队列末尾
2、[E] poll():出队操作,获取并删除队列中的队首元素
3、 [E] peek():引用队首元素,获取后该元素依旧在队中。
二、Deque
Deque继承自Queue,特点是队列两端都可以做出入队操作。
1、常见实现类:java.util.LinkedList
2、常用方法:
1、[void] offer():
2、[void] offerFirst():从队首方向入队
3、[void] offerLast():从队尾方向入队,与offer一致
三、栈结构:
栈可以保存一组元素,但是存取必须遵循先进后出的原则(FILO)。 通常使用栈结构完成“后退”这样的功能。
Deque双端队列如果从同一侧做出入栈操作就实现了栈结构,因此Deque也为栈,提供他出入栈的经典方法:push、pop
入栈也称为压栈,出栈也称为弹栈。出站时获取数据后,原数据会从栈中移除。
也可以直接使用java.util.Stack进创建栈。
1、常用方法:
1、pop()方法:出栈
2、push()方法:入栈