Java中的佇列是一種線性資料結構,具有多種功能。佇列有兩個端點,它遵循先進先出(FIFO)原則插入和刪除其元素。在本教程中,我們將了解 Java 中佇列的兩個重要函數,它們是 add() 和 Offer()。
java中的佇列是一個擴充了util和collection套件的介面。元素在後端插入並從前端移除。 java中的佇列可以使用鍊錶、DeQueue、優先權佇列等類別來實作。優先權佇列是普通佇列的擴充形式,每個元素都有一個優先權。
此方法用於向佇列中插入元素。它將定義的元素(作為參數傳遞的元素)添加到隊列的末尾,並且僅當定義的元素成功添加到末尾時才傳回true。如果元素沒有加入到佇列末尾,add() 方法會拋出異常。
使用此方法,我們可以將整數和字串值新增到佇列中。
例如:add(3) 這將在佇列末尾插入 3。
add() 方法總是會採用一些參數值。您無法向其傳遞 null 值,因為 Queue 不接受 Null 值,在這種情況下,它將引發異常。
IllegalStateException - 當佇列達到最大容量時,會出現此 java 例外狀況。
NullPointerException - 當嘗試透過 add() 方法輸入 null 值時,因為佇列不接受 null 值。
下面的程式展示如何在Java中實作Queue中的add()方法。
import java.util.*; // importing util package with all its features public class Main { public static void main(String[] args) { Queue<Integer> q = new LinkedList<>(); // queue declaration q.add(5); //adding elements to the queue q.add(6); q.add(4); q.add(1); q.add(8); System.out.println("Queue is: " + q); } }
Queue is: [5, 6, 4, 1, 8]
此方法用於向佇列中插入元素,元素可以是整數或字串資料類型。它根據隊列的容量插入指定的元素。如果特定元素無法插入佇列,它不會拋出任何異常。
在 Java 中成功將元素插入到佇列後端時,它會傳回 True。如果佇列超出其容量,offer() 方法將傳回 false。
offer(3) : this will insert 3 into the queue offer(“Java”) : this will insert Java into the queue
下面的程式展示如何在java中實作offer()。
import java.util.*; // importing util package with all its features public class Main { public static void main(String[] args) { Queue<String> q = new LinkedList<>(); // queue declaration q.offer("Java"); //inserting elements to the queue q.offer("is"); q.offer("Good"); System.out.println("Queue is " + q); } }
Queue is [Java, is, Good]
S.No |
#add() 函數 |
#offer() 方法 |
---|---|---|
1 |
當您嘗試在已滿佇列中插入元素時,add() 函數會引發 IllegalState 異常。 |
當佇列已滿或達到最大大小時,它不會拋出任何異常,但會傳回 false。 |
2 |
成功插入佇列元素後,add() 方法傳回 true。它不會回傳 False |
offer() 方法在成功插入元素時傳回 True,在插入 Queue 元素失敗時傳回 False。 |
3 |
屬於Collection框架。 |
這是一個隊列方法。 |
Queue 中的 add() 和 Offer() 方法之間的唯一區別是:如果 add() 超出了佇列的限制,則會拋出例外。雖然 Offer() 方法不會拋出任何異常,但它在成功插入元素時傳回 true,而在因佇列達到最高容量而導致元素無法插入佇列時傳回 False。
以上是在Java中,add()方法和offer()方法在佇列中有什麼區別?的詳細內容。更多資訊請關注PHP中文網其他相關文章!