web-dev-qa-db-ja.com

arraylistとlinkedListの違い

重複の可能性:
ArrayList <>ではなくLinkedList <>を使用する場合
配列/配列リスト上でリンクリストを使用する場合

いつarrayListを使用する必要があり、いつLinkedListを使用する必要がありますか?

TreeSetLinkedHashSet、およびHashSetはいつ使用する必要がありますか?

14
constantlearner
When should i use arrayList and when should I go for LinkedList?

Arraylistは、配列のようなインデックスを維持します。したがって、putよりも頻繁なget操作が必要な場合は、arraylistを使用するのが最適です。

LinkedListは、要素へのポインターを維持します。 arraylistのように特定のインデックスに移動することはできません。ただし、ここでのリンクリストの利点は、継続インデックスを維持するために、配列リストのように前後にシフトする必要がないことです。したがって、リンクリストでのget操作は、要素に到達するためにポインターを通過する必要があるため、コストがかかります。ただし、put操作はarraylistと比較して優れています。ポインタに接続するだけで、それだけです。

When should I use TreeSet, LinkedHashSet and HashSet?

違いは注文だけです。ツリーセット要素は、メンバーオブジェクトによって定義された特定の順序を維持する必要があります。

16
Ahmad