タイトルが示すように、いつ使用するList
必要があり、いつ使用する必要がありますArrayList
か?
ありがとう
主な使用時間ArrayList
は.NET 1.1
それ以外は、List<T>
ずっと(あなたの地元のためにT
)...
前もってタイプがわからない(そしてジェネリックを使用できない)(まれな)ケースでは、 (IMO)List<object>
よりも役立ちます。ArrayList
List<TypeOfChoice>
TypeSafe であり、ArrayList
(不要なボックス化/ボックス化解除がない) よりも高速であるため、(ジェネリックと共に .NET 2.0 で導入された)を常に使用する必要があります。
ArrayList が便利だと思う唯一のケースは、古いもの (.NET 1.1) とやり取りする必要がある場合、または異なるタイプのオブジェクトの配列が必要で、すべてをオブジェクトとしてロードする場合ですが、後者を行うこともできます。List<Object>
どちらが一般的に優れています。
List はジェネリック クラスであるため、常に List を使用する傾向があります。
ArrayList は .NET 1.x クラス (まだ利用可能で有効) ですが、「型指定」/ジェネリックではないため、項目を「オブジェクト」から目的の型にキャストする必要があります。一方、List を使用する場合は、その必要はありません。
可能な限り List を使用してください。パフォーマンスの高い List が存在する場合、ArrayList の使用は見られません。
ArrayList は古い .NET データ構造です。.NET 2.0 以降を使用している場合、配列が同じタイプの項目を保持する必要がある場合は常に List を使用します。ArrayList よりも List を使用すると、パフォーマンスと使いやすさの両方が向上します。
他の人が言ったように。ほとんどの場合、型がわかっている場合 (C# は厳密に型指定された言語です)、List ジェネリックを使用する必要があります。また、ポリモーフィック/継承クラスまたはそのようなものを行う場合は、他の方法で使用する必要があります。
Linq クエリを使用したくない場合は、List を使用する必要はありません。使用する場合は、リストを優先する必要があります。