PriorityQueue自定义排序函数的用法

原创
2019/10/12 22:20
阅读数 1.4K

简单地一个例子:

import java.util.Comparator;
import java.util.PriorityQueue;
import java.util.Random;


public class Main {

    public static void main(String args[]) {
        PriorityQueue<People> queue = new PriorityQueue<People>(11,
                new Comparator<People>() {
                    public int compare(People p1, People p2) {
                        return p2.age - p1.age;
                    }
                });

        for (int i = 1; i <= 10; i++) {
            queue.add(new People("张" + i, (new Random().nextInt(100))));
        }
        while (!queue.isEmpty()) {
            System.out.println(queue.poll().toString());
        }
    }
}

class People {
    String name;
    int age;

    public People(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public String toString() {
        return "姓名:" + name + " 年龄:" + age;
    }

}

在idea中显示的结果:

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部