2014-02-17 32 views
0

我在實例化Guava的MinMaxPriorityQueue時遇到了問題(http://docs.guava-libraries.googlecode.com/git/javadoc/com/google/common/collect/MinMaxPriorityQueue.html#orderedBy%28java.util.Comparator%29)。我真的不明白它所指的建造者是什麼。我不善於解釋Javadocs。Guava MinMaxPriorityQueue實例化

我也試着這樣做:

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?謝謝!

+0

這是我的錯,我羞愧合適。 –

回答

5

您鏈接的方法的javadoc表示此方法返回MinMaxPriorityQueue.Builder的實例。這個類有各種方法來配置和創建隊列(用最大的尺寸,初始內容等)

所以,你只需要

MinMaxPriorityQueue<Node> bob = 
    MinMaxPriorityQueue.orderedBy(nodeComparator) 
         .maximumSize(1000) 
         .create();