LinkedHashMap オブジェクトから返されるキーと値の順序は保証されていますか? 質問する

LinkedHashMap オブジェクトから返されるキーと値の順序は保証されていますか? 質問する

LinkedHashMapには予測可能な反復順序 (挿入順序) があることはわかっています。Setによって返されるLinkedHashMap.keySet()Collectionによって返されるLinkedHashMap.values()もこの順序を維持しますか?

ベストアンサー1

マップインターフェースは3つのコレクションビュー、マップの内容をキーのセット、値のコレクション、またはキーと値のマッピングのセットとして表示できます。注文マップの順序は、マップのコレクション ビューの反復子が要素を返す順序として定義されます。 クラスなどの一部のマップ実装では、TreeMap順序に関して特定の保証が行われますが、 クラスなどの他のマップ実装では、HashMap順序が保証されません。

--地図

このリンクリストは反復順序を定義します。これは通常、キーがマップに挿入された順序です(挿入順序)。

--リンクハッシュマップ

したがって、、、およびkeySet()(前述の 3 つのコレクション ビュー)values()は、entrySet()内部リンク リストが使用する順序で値を返します。また、およびの JavaDoc はMapそれLinkedHashMapを保証します。

結局のところ、それがこの授業の目的なのです。

おすすめ記事