Java 队列 Queue 用法实例详解

时间:2021-10-05 09:12:06

队列是一种特殊的线性表,它只允许在表的前端进行删除操作,而在表的后端进行插入操作。

LinkedList类实现了Queue接口,因此我们可以把LinkedList当成Queue来用。

以下实例演示了队列(Queue)的用法:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
/*
 author by w3cschool.cc
 Main.java
 */
import java.util.LinkedList;
import java.util.Queue;
public class Main {
 public static void main(String[] args) {
  //add()和remove()方法在失败的时候会抛出异常(不推荐)
  Queue<String> queue = new LinkedList<String>();
  //添加元素
  queue.offer("a");
  queue.offer("b");
  queue.offer("c");
  queue.offer("d");
  queue.offer("e");
  for(String q : queue){
   System.out.println(q);
  }
  System.out.println("===");
  System.out.println("poll="+queue.poll()); //返回第一个元素,并在队列中删除
  for(String q : queue){
   System.out.println(q);
  }
  System.out.println("===");
  System.out.println("element="+queue.element()); //返回第一个元素
  for(String q : queue){
   System.out.println(q);
  }
  System.out.println("===");
  System.out.println("peek="+queue.peek()); //返回第一个元素
  for(String q : queue){
   System.out.println(q);
  }
 }
}

以上代码运行输出结果为:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
a
b
c
d
e
===
poll=a
b
c
d
e
===
element=b
b
c
d
e
===
peek=b
b
c
d
e

希望本篇队列实例对您有所帮助

原文链接:http://www.2cto.com/kf/201601/486738.html