Java PriorityQueue iterator() 方法



描述

Java PriorityQueue iterator() 方法返回此队列中元素的迭代器。然后可以使用此迭代器迭代 PriorityQueue 对象的每个元素。

声明

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

public Iterator<E> iterator()

参数

返回值

此方法返回此队列中元素的迭代器。

异常

使用 iterator() 方法迭代整数 PriorityQueue 示例

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

package com.tutorialspoint;

import java.util.PriorityQueue;

import java.util.Iterator;

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

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

      // iterator() is used to print all the elements
      // next() returns the next element on each iteration
      System.out.println("printing elements using iterator:");
      for(Iterator<Integer> itr = queue.iterator();itr.hasNext();)  {
         System.out.println(itr.next());
      }
   }
}   

输出

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

printing elements using iterator:
15
20
25
22

使用 iterator() 方法迭代字符串 PriorityQueue 示例

以下示例演示了如何使用 Java PriorityQueue iterator() 方法迭代字符串。我们使用 add() 方法为每个元素向 PriorityQueue 对象添加几个字符串,然后迭代并打印每个元素以显示添加的元素。

package com.tutorialspoint;

import java.util.PriorityQueue;

import java.util.Iterator;

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("A");
      queue.add("B");
      queue.add("C");
      queue.add("D");

      // iterator() is used to print all the elements
      // next() returns the next element on each iteration
      System.out.println("printing elements using iterator:");
      for(Iterator<String> itr = queue.iterator();itr.hasNext();)  {
         System.out.println(itr.next());
      }
   }
}   

输出

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

printing elements using iterator:
A
B
C
D

使用 iterator() 方法迭代对象 PriorityQueue 示例

以下示例演示了如何使用 Java PriorityQueue iterator() 方法迭代 Student 对象。我们使用 add() 方法为每个元素向 PriorityQueue 对象添加几个 Student 对象,然后迭代并打印每个元素以显示添加的元素。

package com.tutorialspoint;

import java.util.PriorityQueue;

import java.util.Iterator;

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"));

      // iterator() is used to print all the elements
      // next() returns the next element on each iteration
      System.out.println("printing elements using iterator:");
      for(Iterator<Student> itr = queue.iterator();itr.hasNext();)  {
         System.out.println(itr.next());
      }
   }
}
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;
   }
} 

输出

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

printing elements using iterator:
[ 1, Julie ]
[ 2, Robert ]
[ 3, Adam ]
java_util_priorityqueue.htm
广告