0

の実装ではHashMap、連結リストを使用してバケット内の要素を表します。各エントリには、次のエントリへの要素があります。参照:参照。ただし、LinkedListクラスの実装では、各要素には前の要素への参照があり、次の要素はRefを参照してください。あるリンク リストでは重要で、別のリンク リストでは重要ではない理由を理解しようとしているだけpreviousですか?

4

4 に答える 4

2

Entry( の内部クラスHashMap) は、汎用リンク リストの一部ではありません(現状のままLinkedList)。唯一の目的は、要素を探して順方向に反復することです。したがって、参照は必要ありませんprevious

于 2013-03-29T12:09:25.200 に答える
1

前の参照では、 LinkedList を双方向の List にしています。これにより、 List を逆方向に繰り返すことができます。

于 2013-03-29T12:00:56.647 に答える
1

厳密に言えば、リンクされたリストでは前の要素への参照は必要ありません。はjava.util.LinkedList、実際には双方向にリンクされたリストです。これは、次の操作を効率的に実装するために必要です。

上記の操作は、Map.Entry のリンクされたリストには役に立ちません。

getLast()LinkedListlist インターフェイスへの追加ですが、他の 2 つは前述のインターフェイスで必要であることに注意してください。

于 2013-03-29T12:10:03.807 に答える
0

LinkedList は汎用の実装です。逆方向に反復したい場合があります。マップの場合、バケットを検索するとonly前方に反復されます。逆方向に反復する必要がないため、実装されていません。

于 2013-03-29T12:10:28.107 に答える