如何在java中获取比较器的反函数 [英] How to get inverse of a comparator in java

查看:116
本文介绍了如何在java中获取比较器的反函数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在一个方法中,我收到一个泛型对象E扩展了Comparable< E> 作为参数。现在我想创建两个优先级队列。一个使用E和其他队列使用的比较器,它使用与比较器使用E(即如果E使用'<',那么第二个队列必须使用'> =')。
请教我如何创建两个这样的队列。

  queue2 = new PriorityQueue< E>(0,集合。 reverseOrder(E)); 

我收到 reverseOrder 的错误不适用。



请帮忙 = http://docs.oracle.com/javase/6/docs/api/java/util/Collections.html#reverseOrder%28java.util.Comparator%29> Collections.reverseOrder


In a method I receive a generic object E extends Comparable<E> as an argument. Now i want to create two priority queues.One which uses the comparator used by E and other queue which uses the opposite of comparator used by E(i.e. if E uses '<' then second queue must use '>='). Please hep me how to create two such queues.

queue2=new PriorityQueue<E>(0,Collections.reverseOrder(e));

I am getting the error that reverseOrder is not applicable.

please help

解决方案

Look at Collections.reverseOrder.

这篇关于如何在java中获取比较器的反函数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆