更新时间:2023-04-10 来源:黑马程序员 浏览量:

在Java中,Queue是一个接口,它有许多实现类,如LinkedList,PriorityQueue等。Queue接口提供了许多方法,其中poll()和remove()是两个常用的方法。它们的区别在于,当队列为空时,poll()方法返回null,而remove()方法会抛出NoSuchElementException异常。
下面是Java代码演示poll()和remove()方法的区别:
import java.util.LinkedList;
import java.util.Queue;
public class QueueDemo {
public static void main(String[] args) {
Queue<String> queue = new LinkedList<>();
// 添加元素到队列
queue.offer("A");
queue.offer("B");
queue.offer("C");
// 使用poll()方法获取并移除队列头部的元素
System.out.println("使用poll()方法获取并移除队列头部的元素:");
while(!queue.isEmpty()){
System.out.println(queue.poll());
}
// 重新添加元素到队列
queue.offer("A");
queue.offer("B");
queue.offer("C");
// 使用remove()方法获取并移除队列头部的元素
System.out.println("使用remove()方法获取并移除队列头部的元素:");
while(!queue.isEmpty()){
System.out.println(queue.remove());
}
}
} 输出结果为:
使用poll()方法获取并移除队列头部的元素: A B C 使用remove()方法获取并移除队列头部的元素: A B C
在第一个while循环中,我们使用了poll()方法获取并移除队列头部的元素,这时队列为空,循环结束。在第二个while循环中,我们使用了remove()方法获取并移除队列头部的元素,由于队列为空,这时会抛出NoSuchElementException异常。
毕业16个工作日,平均薪资13180元,就业率100%,广州黑马AI智能应用开发(Java)学科20250529班
2026-03-06毕业32个工作日,平均薪资11147元,就业率95%,广州黑马AI智能应用开发(Java)学科20250326班
2026-03-05黑马程序员2025全国就业数据发布:全学科平均就业率92.07%,AI开发类就业平均薪资达11869.67元。
2026-03-05黑马全国校区齐开班!场面太太太壮观了!
2026-03-03AI智能应用开发课程紧贴企业刚需,全程高效学习,直达中高级软件开发水平
2026-02-28风口正劲!黑马程序员又一AI智能应用开发班毕业当天100%就业!
2026-02-27