【Description】
A queue is a collection that implements the first-in-first-out protocal. This means that the only accessiable object in the collection in the first one that was inserted. The most common example of a queue is a waiting line.
【Interface】
In the java Collections Framework includes a queue interface, which is implemented by four classes: the linkedList class, the AbstractQueue class, the priorityQUeue class, and the ArrayDeque class. For simple FIFO queues, the arrayDeque class the best choice:
Queue<String> queue = new ArrayDeque<String>();
【Demo】
package com.albertshao.ds.queue; // Data Structures with Java, Second Edition // by John R. Hubbard // Copyright 2007 by McGraw-Hill import java.util.*; public class TestStringQueue { public static void main(String[] args) { Queue<String> queue = new ArrayDeque<String>(); queue.add("GB"); queue.add("DE"); queue.add("FR"); queue.add("ES"); System.out.println(queue); System.out.println("queue.element(): " + queue.element()); System.out.println("queue.remove(): " + queue.remove()); System.out.println(queue); System.out.println("queue.remove(): " + queue.remove()); System.out.println(queue); System.out.println("queue.add("IE"): "); queue.add("IE"); System.out.println(queue); System.out.println("queue.remove(): " + queue.remove()); System.out.println(queue); } }
【Result】
[GB, DE, FR, ES] queue.element(): GB queue.remove(): GB [DE, FR, ES] queue.remove(): DE [FR, ES] queue.add("IE"): [FR, ES, IE] queue.remove(): FR [ES, IE]