我们可以在java中拥有一个整数数组的优先级队列

时间:2016-12-08 10:38:37

标签: java priority-queue

我们可以定义一个数组的优先级队列来比较数组的长度吗?

    PriorityQueue<int[]> pq=new PriorityQueue<int[]>(5, (a,b) -> a.length - b.length);
    int[] a = new int[]{1,2};
    int[] b = {1,2,3};
    int[] c = new int[]{3};
    pq.add(a);
    pq.add(b);
    pq.add(c);
    while (pq.size() != 0)
    {
        System.out.println(pq.remove());
    }
}

输出:
[I @ 1c20c684
[I @ 1fb3ebeb
[I @ 548c4f57

1 个答案:

答案 0 :(得分:2)

你可以用你想要的比较器。您的代码是打印数组的地址作为输出。您可以使用java.util.Arrays.toString()方法。