更新時間:2023-04-10 來源:黑馬程序員 瀏覽量:
IT就到黑馬程序員.gif)
在Java中,Queue是一個接口,它有許多實現(xiàn)類,如LinkedList,PriorityQueue等。Queue接口提供了許多方法,其中poll()和remove()是兩個常用的方法。它們的區(qū)別在于,當(dāng)隊列為空時,poll()方法返回null,而remove()方法會拋出NoSuchElementException異常。
下面是Java代碼演示poll()和remove()方法的區(qū)別:
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());
}
}
} 輸出結(jié)果為:
使用poll()方法獲取并移除隊列頭部的元素: A B C 使用remove()方法獲取并移除隊列頭部的元素: A B C
在第一個while循環(huán)中,我們使用了poll()方法獲取并移除隊列頭部的元素,這時隊列為空,循環(huán)結(jié)束。在第二個while循環(huán)中,我們使用了remove()方法獲取并移除隊列頭部的元素,由于隊列為空,這時會拋出NoSuchElementException異常。
1024首播|39歲程序員逆襲記:不被年齡定義,AI浪潮里再迎春天
2025-10-241024程序員節(jié)丨10年同行,致敬用代碼改變世界的你
2025-10-24【AI設(shè)計】北京143期畢業(yè)僅36天,全員拿下高薪offer!黑馬AI設(shè)計連續(xù)6期100%高薪就業(yè)
2025-09-19【跨境電商運營】深圳跨境電商運營畢業(yè)22個工作日,就業(yè)率91%+,最高薪資達13500元
2025-09-19【AI運維】鄭州運維1期就業(yè)班,畢業(yè)14個工作日,班級93%同學(xué)已拿到Offer, 一線均薪資 1W+
2025-09-19【AI鴻蒙開發(fā)】上海校區(qū)AI鴻蒙開發(fā)4期5期,距離畢業(yè)21天,就業(yè)率91%,平均薪資14046元
2025-09-19