Java PriorityQueue offer()方法
java.util.PriorityQueue.offer()方法用于在优先级队列中插入一个特定元素。它的作用类似于Priority Queue的add()方法。
语法
Priority_Queue.offer(Object element)
参数: 参数元素是PriorityQueue类型,指的是要插入队列中的元素。
返回值: 如果值被成功插入队列,该方法返回True。
异常: 该方法可以抛出两种类型的异常。
- NullPointerException。如果要插入的元素是NULL。
- ClassCastException。如果要插入的元素是一个不同的类型,不能与队列中现有的元素进行比较。
下面的程序说明了java.util.PriorityQueue.offer()方法
程序1 :
// Java code to illustrate offer()
import java.util.*;
public class PriorityQueueDemo {
public static void main(String args[])
{
// Creating an empty PriorityQueue
PriorityQueue<String> queue = new PriorityQueue<String>();
// 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]
示例2
// Java code to illustrate offer()
import java.util.*;
public class PriorityQueueDemo {
public static void main(String args[])
{
// Creating an empty PriorityQueue
PriorityQueue<Integer> queue = new PriorityQueue<Integer>();
// 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]