Java PriorityQueue add() 方法



描述

Java PriorityQueue add(E e) 方法将指定的元素 E 插入到队列的末尾。此方法等效于 addLast(E)。在将元素添加到 PriorityQueue 时会保持插入顺序,我们可以通过逐个打印每个元素来检查这一点。

声明

以下是 java.util.PriorityQueue.add() 方法的声明

public boolean add(E e)

参数

e − 要添加到队列中的元素。

返回值

如果成功将给定元素添加到队列中,则此方法返回 true,否则返回 false

异常

NullPointerException − 如果指定的元素为 null

向整数 PriorityQueue 添加元素示例

以下示例演示了如何使用 Java PriorityQueue add(E) 方法添加整数。我们使用 add() 方法为每个元素调用几次来向 PriorityQueue 对象添加一些整数,然后打印每个元素以显示添加的元素。

package com.tutorialspoint;

import java.util.PriorityQueue;

public class PriorityQueueDemo {
   public static void main(String[] args) {
      
      // create an empty priority queue with an initial capacity
      PriorityQueue<Integer> queue = new PriorityQueue<>(5);

      // use add() method to add elements in the queue
      queue.add(20);
      queue.add(30);
      queue.add(20);
      queue.add(30);
      queue.add(15);
      queue.add(22);
      queue.add(11);

      // let us print all the elements available in queue
      for (Integer number : queue) {
         System.out.println("Number = " + number);
      }
   }
}

输出

让我们编译并运行上述程序,这将产生以下结果:

Number = 11
Number = 20
Number = 15
Number = 30
Number = 30
Number = 22
Number = 20

向字符串 PriorityQueue 添加元素示例

以下示例演示了如何使用 Java PriorityQueue add(E) 方法添加字符串。我们使用 add() 方法为每个元素调用几次来向 PriorityQueue 对象添加一些字符串,然后使用其 toString() 方法打印 PriorityQueue。

package com.tutorialspoint;

import java.util.PriorityQueue;

public class PriorityQueueDemo {
   public static void main(String[] args) {
      
      // create an empty priority queue
      PriorityQueue<String> queue = new PriorityQueue<>();

      // use add() method to add elements in the queue
      queue.add("Welcome");
      queue.add("To");
      queue.add("Tutorialspoint");
      System.out.println("PriorityQueue = " + queue);      
   }
}

输出

让我们编译并运行上述程序,这将产生以下结果:

PriorityQueue = [To, Welcome, Tutorialspoint]

向对象 PriorityQueue 添加元素示例

以下示例演示了如何使用 Java PriorityQueue add(E) 方法添加 Student 对象。我们使用 add() 方法为每个元素调用几次来向 PriorityQueue 对象添加一些 Student 对象,然后使用其 toString() 方法打印 PriorityQueue。

package com.tutorialspoint;

import java.util.PriorityQueue;

public class PriorityQueueDemo {
   public static void main(String[] args) {

      // create an empty priority queue
      PriorityQueue<Student> queue = new PriorityQueue<>();

      // use add() method to add elements in the queue
      queue.add(new Student(1, "Julie"));
      queue.add(new Student(2, "Robert"));
      queue.add(new Student(3, "Adam"));
      System.out.println("PriorityQueue = " + queue);      
   }
}

class Student implements Comparable<Student> {
   int rollNo;
   String name;

   Student(int rollNo, String name){
      this.rollNo = rollNo;
      this.name = name;
   }

   @Override
   public String toString() {
      return "[ " + this.rollNo + ", " + this.name + " ]";
   }
   
   @Override
   public boolean equals(Object obj) {
      Student s = (Student)obj;
      return this.rollNo == s.rollNo && this.name.equalsIgnoreCase(s.name);
   }

   @Override
   public int compareTo(Student student) {
      return this.rollNo - student.rollNo;
   }
}

输出

让我们编译并运行上述程序,这将产生以下结果:

PriorityQueue = [[ 1, Julie ], [ 2, Robert ], [ 3, Adam ]]
java_util_priorityqueue.htm
广告