Java中如何自定义优先级

   2024-09-30 4880
核心提示:在Java中,可以通过实现Comparable接口或者创建一个Comparator来自定义优先级。实现Comparable接口:public class CustomPriorit

在Java中,可以通过实现Comparable接口或者创建一个Comparator来自定义优先级。

实现Comparable接口:
public class CustomPriority implements Comparable<CustomPriority> {    private int priority;    public CustomPriority(int priority) {        this.priority = priority;    }    @Override    public int compareTo(CustomPriority other) {        return Integer.compare(this.priority, other.priority);    }}

然后,你可以将这个类的对象放入一个优先队列(PriorityQueue)中,优先队列会根据compareTo方法的返回值对元素进行排序。

使用Comparator
import java.util.Comparator;public class CustomPriorityComparator implements Comparator<Integer> {    @Override    public int compare(Integer o1, Integer o2) {        return Integer.compare(o1, o2);    }}

然后,你可以在创建PriorityQueue时传入这个比较器:

PriorityQueue<Integer> priorityQueue = new PriorityQueue<>(new CustomPriorityComparator());

这样,优先队列会根据CustomPriorityComparator中的compare方法对元素进行排序。

 
举报打赏
 
更多>同类物流大全
推荐图文
推荐物流大全
点击排行

网站首页  |  关于我们  |  联系方式网站留言    |  赣ICP备2021007278号