import java.util.*;
class Priority{
public static void main(String args[]){
PriorityQueue<String> queue=new PriorityQueue<String>();
queue.add("Amit");
queue.add("Vijay");
queue.add("Karan");
queue.add("Jai");
queue.add("Rahul");
System.out.println("head:"+queue.element());
System.out.println("head:"+queue.peek());
System.out.println("iterating the queue elements:");
Iterator itr=queue.iterator();
while(itr.hasNext()){
System.out.println(itr.next());
}
queue.remove();
queue.poll();
System.out.println("after removing two elements:");
Iterator itr2=queue.iterator();
while(itr2.hasNext()){
System.out.println(itr2.next());
}
}
}
Output:head:Amit
head:Amit
iterating the queue elements:
Amit
Jai
Karan
Vijay
Rahul
after removing two elements:
Karan
Rahul
Vijay
안녕하세요. 위의 그림과 같이 Java에서 컬렉션의 우선 순위를 배우려고했습니다. 이제 출력 때문에 정말 혼란 스럽습니다. 위의 그림과 같이 출력이 어떻게되는지 이해할 수 없습니다.PriorityQueue를 반복하면 순서가 지정된 결과가 생성되지 않습니다.
iterating the queue elements:
Amit
Jai
Karan
Vijay
Rahul
비자이는 어떻게 rahul 앞에 왔습니까? 알파벳순으로 rahul이 vijay보다 먼저 나와야합니다.
누구나 프로그램 및 메소드 요소 내부에서 무슨 일이 일어나는지 설명 할 수 있습니까? 나는 그 방법을 찾을 수 없었다.
질문의 제목을 'PriorityQueue를 통해 반복해도 순서가있는 결과가 나오지 않습니다'와 같이 변경하십시오. –