更新时间: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异常。
【AI设计】北京143期毕业仅36天,全员拿下高薪offer!黑马AI设计连续6期100%高薪就业
2025-09-19【跨境电商运营】深圳跨境电商运营毕业22个工作日,就业率91%+,最高薪资达13500元
2025-09-19【AI运维】郑州运维1期就业班,毕业14个工作日,班级93%同学已拿到Offer, 一线均薪资 1W+
2025-09-19【AI鸿蒙开发】上海校区AI鸿蒙开发4期5期,距离毕业21天,就业率91%,平均薪资14046元
2025-09-19【AI大模型开发-Python】毕业33个工作日,就业率已达到94.55%,班均薪资20763元
2025-09-19【AI智能应用开发-Java】毕业5个工作日就业率98.18%,最高薪资 17.5k*13薪,全班平均薪资9244元
2025-09-19