问题
队列(Queue)是常用的数据结构,可以将队列看成特殊的线性表,队列限制了对线性表的访问方式:只能从线性表的一端添加(offer)元素,从另一端取出(poll)元素。队列遵循先进先出(FIFO First Input First Output)的原则。
JDK中提供了Queue接口,同时使得LinkedList实现了该接口(选择LinkedList实现Queue的原因在于Queue经常要进行插入和删除的操作,而LinkedList在这方面效率较高)。
本案例要求测试Queue的用法,详细要求如下:
1)使用LinkedList构建队列,将字符串"a"、"b"、"c"放入队列中。
2)获取队列中队首元素。
3)从队首开始删除元素,直到队列中没有元素为止,并在删除的同时输出删除的队首元素。
步骤
实现此案例需要按照如下步骤进行。
步骤一:构建队列
首先新建类TestQueueAndDeque;然后,在该类中新建测试方法testQueue;最后,使用LinkedList构建队列queue,代码如下所示:
package day04;
import java.util.LinkedList;
import java.util.Queue;
import org.junit.Test;
public class TestQueueAndDeque {
/**
* 测试Queue的用法
*/
@Test
public void testQueue() {
Queue<String> queue = new LinkedList<