描述
Java 队列 poll() 检索并删除 此队列表示的列表的头。如果此队列为空,则返回 null。将修改生成的Queue对象,并删除第一个元素。
声明
以下是 java.util.Queue.poll() 方法的声明
public E poll()
参数
无
返回值
此方法返回由此表示的列表的头队列,如果此队列为空,则为 null。
异常
无
示例 1
以下示例显示了 Java 队列 poll() 方法与整数的用法。我们创建一个 Integers 的 LinkedList 对象,添加一些元素,打印它,然后使用 poll() 方法获取第一个元素。当队列被修改时,它会被打印以检查第一个元素是否存在。
package com.yxjc123;
import java.util.LinkedList;
import java.util.Queue;
public class QueueDemo {
public static void main(String[] args) {
//创建一个空队列
Queue<Integer> queue = new LinkedList<>();
//使用add()方法向队列添加元素
queue.add(25);
queue.add(30);
queue.add(20);
queue.add(18);
//让我们打印队列中所有可用的元素
System.out.println("Queue = " + queue);
//从队列中删除后它将检索第一个元素
System.out.println("Retrieved Element is = " + queue.poll());
//让我们再次打印队列中所有可用的元素
System.out.println("Queue = " + queue);
}
}
输出
让我们编译并运行上面的程序,这将产生以下结果 -
Queue = [25, 30, 20, 18]
Retrieved Element is = 25
Queue = [30, 20, 18]
示例 2
以下示例显示 Java 队列 poll() 方法与字符串的用法。我们正在创建一个 String 的 LinkedList,添加一些元素,打印它,然后使用 poll() 方法获取第一个元素。当队列被修改时,它会被打印以检查第一个元素是否存在。
package com.yxjc123;
import java.util.LinkedList;
import java.util.Queue;
public class QueueDemo {
public static void main(String[] args) {
//创建一个空队列
Queue<String> queue = new LinkedList<>();
//使用add()方法向队列添加元素
queue.add("A");
queue.add("B");
queue.add("C");
queue.add("D");
//让我们打印队列中所有可用的元素
System.out.println("Queue = " + queue);
//从队列中删除后它将检索第一个元素
System.out.println("Retrieved Element is = " + queue.poll());
//让我们再次打印队列中所有可用的元素
System.out.println("Queue = " + queue);
}
}
输出
让我们编译并运行上面的程序,这将产生以下结果 -
Queue = [A, B, C, D]
Retrieved Element is = A
Queue = [B, C, D]
示例 3
以下示例显示 Java 队列 poll() 方法与 Student 对象的用法。我们正在创建一个 Student 的 LinkedList,添加一些元素,打印它,然后使用 poll() 方法获取第一个元素。当队列被修改时,它会被打印以检查第一个元素是否存在。
package com.yxjc123;
import java.util.LinkedList;
import java.util.Queue;
public class QueueDemo {
public static void main(String[] args) {
//创建一个空队列
Queue<Student> queue = new LinkedList<>();
//使用add()方法向队列添加元素
queue.add(new Student(1, "Julie"));
queue.add(new Student(2, "Robert"));
queue.add(new Student(3, "Adam"));
//让我们打印队列中所有可用的元素
System.out.println("Queue = " + queue);
//从队列中删除后它将检索第一个元素
System.out.println("Retrieved Element is = " + queue.poll());
//让我们再次打印队列中所有可用的元素
System.out.println("Queue = " + queue);
}
}
class Student {
int rollNo;
String name;
Student(int rollNo, String name){
this.rollNo = rollNo;
this.name = name;
}
@Override
public String toString() {
return "[ " + this.rollNo + ", " + this.name + " ]";
}
@Override
public boolean equals(Object obj) {
Student s = (Student)obj;
return this.rollNo == s.rollNo && this.name.equalsIgnoreCase(s.name);
}
}
输出
让我们编译并运行上面的程序,这将产生以下结果 -
Queue = [[ 1, Julie ], [ 2, Robert ], [ 3, Adam ]]
Retrieved Element is = [ 1, Julie ]
Queue = [[ 2, Robert ], [ 3, Adam ]]