GuavaライブラリにImmutableLinkedHashMap<>
のようなものを見つけたいと思います。 挿入オーダーの不変キー値データ構造を使用する必要があります。 だから、私は何を使うべきですか?私は、挿入順序を保持する不変のキーと値の構造が必要です
答えて
私はあなたが後にしている私は、正確に理解していますかわからないが、それはMap
本当に不変であれば、あなたは、docで述べたようImmutableMap
を見てみたいmght:
アン信頼性の高いユーザー指定の繰り返し順序で、不変のハッシュベースの
Map
nullキーまたは値を許可しません。
Collections.unmodifiableMap(java.util.Map<? extends K, ? extends V>)
は、まだ変更可能な別のマップのビューですが、ImmutableMap
のインスタンスには独自のデータが含まれており、決して変更されません。ImmutableMap
はpublic static final
マップ(「定数マップ」)のために便利であり、また、あなたが同様の方法でそれを使用することができ、あなたは簡単に、発信者
等により、あなたのクラスに用意マップの「防衛的コピー」を行うことができます:
Map<Integer, String> m = ImmutableMap.of(5,"Five",6,"Six",7,"Seven");
希望はこれまでのものです。
はい、私はそれについても言います。 'ImmutableMap'は動作するはずです。 – 808sound
この問題は、 'ImmutableSortedMap'が' ImmutableMap'を拡張しているので、このメソッドのクライアントを持っている場合は、タイプ別に挿入オーダーのメンテナンスを強制することはできません。 –
最初にLinkedHashMap
を作成し、ImmutableMap.copyOf(linkedHashMap)
を使用して元のマップと同じ順序を持つ不変のコピーを作成します。
なぜ気になるのですか? 'ImmutableMap'はすでに挿入命令を使用しています。 –
- 1. 挿入順序を維持するセットタイプ
- 2. どのデータ構造がPythonで順序を保持していますか?
- 3. 構造体の順序を保存する方法は?
- 4. 挿入値の順序がWoocommerce
- 5. エンティティフレームワークは、データベースに挿入するときに順序を保持しますか?
- 6. スウィフト構造のプロパティの順序を変更するには?
- 7. Meteorでタイムスタンプを使用して挿入順序を保持する方法は?
- 8. linqとToLookup()で値の順序を保持する
- 9. 変換JSONキー:フラット構造の値ペアをキー:値ツリー構造
- 10. レンジキーで値を保持する構造
- 11. guava SetMultimapでの挿入順序を維持する
- 12. RubyのSetは、常に挿入順序を保持しますか?
- 13. インデックスとキーによるランダムアクセスをサポートしているデータ構造、順序が維持された状態でlogaritmic時間での挿入、削除
- 14. Javaは挿入順序と重複した値を維持します
- 15. Java - 重複した挿入順序を保持するPriorityQueueの代替品
- 16. Rubyはハッシュの挿入順序を維持します
- 17. STM32F0 I2C HALは、私は構造体を保存する必要がI2CのEEPROM
- 18. ランダムな順序で3組のキーを使用するデータ構造(JAVA)
- 19. ポインタの構造を持つクラスにはデストラクタが必要です
- 20. バッチインサートの挿入順序
- 21. C++で2Dベクトルに要素を挿入する順序
- 22. ハッシュテーブルの要素の順序を保持する方法
- 23. Pythonの辞書でキー/値のペアの順序を維持する方法は?
- 24. XMLスキーマの構造、異なる値を持つ同じ要素を持つxmlにはスキーマが必要です
- 25. TreeVar構造体をツリー順序で構築する方法
- 26. SetMultiMapを平坦化して挿入順序を維持する
- 27. 私は特定のデータ構造の名前が必要です
- 28. 不変のデータ構造を持つRxJS?
- 29. Pythonの順序不変ハッシュ
- 30. 構造体をキーとして挿入した値をC++マップに挿入する
[パッケージcom.google.common.collectの説明](http://docs.guava-libraries.googlecode.com/git/javadoc/com/google/common/collect/package-summary.html#package_description) [ImmutableCollectionsExplained Guava wiki](https://code.google.com/p/guava-libraries/wiki/ImmutableCollectionsExplained)を参照してください。 – Xaerxess
[Google Collections ImmutableMap iteration order]の複製があります。(http://stackoverflow.com/questions/3810738/google-collections-immutablemap-iteration-order) – Barett