📜  Java中的 PriorityQueue offer() 方法

📅  最后修改于: 2022-05-13 01:54:25.465000             🧑  作者: Mango

Java中的 PriorityQueue offer() 方法

Java.util.PriorityQueue.offer() 方法用于将特定元素插入优先级队列。它的作用类似于优先队列的 add() 方法。

句法:

Priority_Queue.offer(Object element)

参数:参数元素是PriorityQueue类型,指的是要插入到Queue中的元素。

返回值:如果值成功插入队列,则该方法返回 True。

异常:该方法可以抛出两种类型的异常:

  • NullPointerException:如果要插入的元素为NULL。
  • ClassCastException:如果要插入的元素属于无法与队列的现有元素进行比较的不同类型。

下面的程序说明了Java.util.PriorityQueue.offer() 方法
方案一:

// Java code to illustrate offer()
import java.util.*;
  
public class PriorityQueueDemo {
    public static void main(String args[])
    {
        // Creating an empty PriorityQueue
        PriorityQueue queue = new PriorityQueue();
  
        // Use add() method to add elements into the Queue
        queue.add("Welcome");
        queue.add("To");
        queue.add("Geeks");
        queue.add("4");
        queue.add("Geeks");
  
        // Displaying the PriorityQueue
        System.out.println("Initial PriorityQueue: " + queue);
  
        // Inserting using offer()
        queue.offer("The");
        queue.offer("Priority");
        queue.offer("Class");
  
        // Displaying th final Queue
        System.out.println("Priority queue after Insertion: " + queue);
    }
}
输出:
Initial PriorityQueue: [4, Geeks, To, Welcome, Geeks]
Priority queue after Insertion: [4, Class, Priority, Geeks, Geeks, To, The, Welcome]

方案二:

// Java code to illustrate offer()
import java.util.*;
  
public class PriorityQueueDemo {
    public static void main(String args[])
    {
        // Creating an empty PriorityQueue
        PriorityQueue queue = new PriorityQueue();
  
        // Use add() method to add elements into the Queue
        queue.add(10);
        queue.add(15);
        queue.add(30);
        queue.add(20);
        queue.add(5);
  
        // Displaying the PriorityQueue
        System.out.println("Initial PriorityQueue: " + queue);
  
        // Inserting using offer()
        queue.offer(100);
        queue.offer(120);
        queue.offer(150);
  
        // Displaying th final Queue
        System.out.println("Priority queue after Insertion: " + queue);
    }
}
输出:
Initial PriorityQueue: [5, 10, 30, 20, 15]
Priority queue after Insertion: [5, 10, 30, 20, 15, 100, 120, 150]