3

サンプルコードを考えると:

Comparator<Node> comparator = this.createCompartor(algorithmChoice , matrix);

this.m_openList1 = new PriorityQueue<Node>(100, comparator);

100コンストラクターのは何PriorityQueueを表していますか?

4

1 に答える 1

5

の初期容量ですPriorityQueue。追加する項目の数が事前にわかっている (または概算がある) 場合は、通常、初期容量を明示的に指定します。

これは、ドキュメントでも確認できます。

public PriorityQueue(int initialCapacity, Comparator<? super E> comparator)

指定されたコンパレータに従って要素を順序付けする、指定された初期容量を持つ PriorityQueue を作成します。

パラメータ:
- initialCapacity- このプライオリティ キューの初期容量。
- comparator- このプライオリティ キューの順序付けに使用されるコンパレータ。null の場合、順序は要素の自然な順序に依存します。

スロー:
- IllegalArgumentException- initialCapacity1 未満の場合

実際、Java のほとんどのコレクションには、初期容量を指定する int 引数を取るコンストラクターがあります。

于 2012-11-25T20:59:25.847 に答える