誰かが他の人を選んだときの主な利点と、その選択肢に付随する障害を説明できますか?LinkedHashMapsとLinkedHashSetsの長所と短所は何ですか?
答えて
彼らは異なる問題を解決します.LinkedHashMapはキーの値へのマッピングを行いますが、LinkedHashSetは重複のないもののコレクションを格納するだけです。
Aは、ハッシュ・マップがマッピングのキー/値のペアのためにあるリンク - 例えば、保存名前と年齢:
Map<String,Integer> namesAndAges = new LinkedHashMap<String,Integer>();
namesAndAges.put("Benson", 25);
namesAndAges.put("Fred", 19);
一方、リンクハッシュセットは一つのコレクションを格納するためのものです - - たとえば名前は、:
Set<String> names = new LinkedHashSet<String>();
names.add("Benson");
names.add("Fred");
ArrayListのソースコードを探していましたが、ArrayListの代わりにSet(良い検索パフォーマンスがあります)を使用しなければならないことを確認しました(すべてのレコードを調べて何かを見つける必要があります) –
LinkedHashMapの目的HashMap上では、LinkedHashMapはLinkedListを内部的に使用して、キーと値のペアが追加された順序を格納します。LinkedHashMapを反復すると、追加された順序でキーと値のペアが生成され、古典的なHashMapは各キーのハッシュコードの順序に基づいて反復処理されます。 –
これは間違いありませんが、LinkedHashMapsとLinkedHashSetsを比較しているので、共通点ではなく違いに注目することにしました。 :-) – Benson
1つはセット、1つはマップです。特定のシナリオに適したデータ構造を選択します。
セットに値があり、重複を入れることはできません。マップにはキーと値のペアがあります。彼らはさまざまな用途を持っています。
セットは、オブジェクトのグループを渡すコレクションとして使用されますが、マップは、各要素を識別するユニークなキーがあり、そのキーでアクセスできるようにする場合に便利です。
LinkedHashSetのは、内部要素の順序を定義し、そのエントリのすべてを実行している二重リンクリストが含まれています。 このクラスはnull要素を許可します。
このクラスの実装は同期されていないため、外部と同期する必要があります。 のLinkedHashMapは、いずれかの同期化されず、例えば外部
同期させる必要があります。その要素ごとLinkedHashSetの店単一値とのLinkedHashMap記憶キー/値のペア以外
Map map = Collections.synchronizedMap(new LinkedHashMap());
。
下の図には、java.util.Collectionsがあります。ソリッドボックスは
alt text http://www.softfinity.com/diag1.png
LinkedHashMap
とLinkedHashSet
は一つだけ違いがある具象クラスの実装を示し、それはHashMap
とHashSet
違い、両親によって来ます。再び、HashSet
は、HashMap
の単なる変更です。 HashSet
をHashMap
と言うことができ、すべての値が単一の最終オブジェクトを指しています。したがって、それらの両方はあなたに大きな違いを与えません。
LinkedHashSet
を使用すると、キー以外の最終的なオブジェクトは1つだけ使用することになります。 LinkedHashMap
を使用すると、すべてのキーで値をnullに設定すると、Set目的のLinkedHashSetよりも優れています。
- 1. ロングポーリングと通常ポーリングの長所と短所は何ですか?
- 2. 長所と短所
- 3. javascriptの匿名メソッドの長所と短所は何ですか?
- 4. オブジェクトデータベースの長所と短所は何ですか?
- 5. triplestoreデータベースの長所と短所は何ですか?
- 6. 多重継承の長所と短所は何ですか?
- 7. 64ビット.NETの長所と短所は何ですか?
- 8. ハスケルの長所と短所
- 9. ストーリーボードの長所と短所
- 10. TreeSetの長所と短所
- 11. DFCとDFSの長所と短所は?
- 12. 長所と短所READ_COMMITTED_SNAPSHOT
- 13. ServiceBusアーキテクチャ長所と短所
- 14. UILabel drawTextInRect長所と短所
- 15. newid()とnewsequentialid()の違いと長所と短所は何ですか?
- 16. ノードサスとギャルプサスの長所と短所
- 17. 長所と短所Googleのアプリケーションエンジンで
- 18. Backbone.jsでヒゲを使うことの長所と短所は何ですか?
- 19. Delroyed JobとHerokuのRabbitMQの長所と短所は何ですか?
- 20. Webサービスのセキュリティ:WSE3.0とWCFの長所と短所は何ですか?
- 21. HttpContextベースのキャッシュとSystem.Runtime.Cacheの長所と短所は何ですか?
- 22. Node.jsテンプレート用のJadeとEJSの長所と短所は何ですか?
- 23. シングルトンまたはセパレートクラス - 長所と短所
- 24. WebサービスとDLL。長所と短所?
- 25. phpソケットプログラミング、長所と短所とアプローチ
- 26. LuceneのMultiSearcherクラスの長所と短所
- 27. ASNA Visual RPG(AVR)の長所と短所
- 28. EF CodeFirstの長所と短所
- 29. プロダクトラインソフトウェア開発の長所と短所
- 30. DotNetNukeコミュニティブログサイトの長所と短所
私は混乱して、愚かな質問をしましたが、クイック回答に感謝します。 –