我在从Guava(http://docs.guava-libraries.googlecode.com/git/javadoc/com/google/common/collect/MinMaxPriorityQueue.html#orderedBy%28java.util.Comparator%29)实例化MinMaxPriorityQueue时遇到麻烦。我真的不明白它指的是什么建造者。我不擅长解释Javadocs。
我尝试这样做:
MinMaxPriorityQueue<T bob = new MinMaxPriorityQueue<T>(null, int);
引发错误
The constructor MinMaxPriorityQueue<T>(MinMaxPriorityQueue.Builder<? super E>, int) is not visible
。我尝试这样做:
MinMaxPriorityQueue<T> bob = MinMaxPriorityQueue.create();
引发错误:
MinMaxPriorityQueue<T> bob = MinMaxPriorityQueue.create();
。有人可以解释一下如何实例化一个最大大小为N的MinMaxPriorityQueue和一个比较器NodeComparator吗?谢谢!
最佳答案
您链接到的方法的javadoc说该方法返回MinMaxPriorityQueue.Builder
的实例。此类具有多种方法来配置和创建队列(具有最大大小,初始内容等)。
所以你只需要
MinMaxPriorityQueue<Node> bob =
MinMaxPriorityQueue.orderedBy(nodeComparator)
.maximumSize(1000)
.create();
关于java - Guava MinMaxPriorityQueue实例化,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21840715/