我正在尝试对用户使用优先级队列输入的正整数序列进行排序。我不确定如何实现某些东西,所以我想知道是否有人可以提供帮助。这就是我到目前为止所拥有的:
import java.util.PriorityQueue;
import java.util.Scanner;
public class priorityquene implements Comparable<priorityquene>
{
final int priority;
final String name;
public priorityquene(int p, String n)
{
priority = p;
name = n;
}
public String toString()
{
return priority + ", " + name;
}
public int compareTo(priorityquene other)
{
return priority < other.priority ? -1 : priority > other.priority ? 1 : 0;
}
public static void main(String[] args)
{
PriorityQueue<priorityquene> pq = new PriorityQueue<priorityquene>();
Scanner input = new Scanner(System.in);
System.out.println("Please enter a positive integer: ");
int num1 = input.nextInt();
pq.add(new priorityquene(num1, " "));
System.out.println("Please enter a positive integer: ");
int num2 = input.nextInt();
pq.add(new priorityquene(num2, " "));
System.out.println("Please enter a positive integer: ");
int num3 = input.nextInt();
pq.add(new priorityquene(num3, " "));
System.out.println("Please enter a positive integer: ");
int num4 = input.nextInt();
pq.add(new priorityquene(num4, " "));
System.out.println("Please enter a positive integer: ");
int num5 = input.nextInt();
pq.add(new priorityquene(num5, " "));
while (!pq.isEmpty())
System.out.println(pq.remove());
}
}
有些事情我不确定如何实施。我如何将其设置为接受无限制的输入以及输入特定整数时,例如 0;到目前为止,它开始从最小到最高对 0 之前的输入进行排序?