この記事では、C#のArrayとArrayListの違いについての関連情報を主に紹介しますので、必要な方は
C#
1のArrayとArrayListの詳細な説明と違いを参照してください。 . Array の使用法
type[] typename=new type[size];
または
type[] typename=new type[]{ };
配列型 変数 は宣言と同時にインスタンス化する必要があります (初期化する場合、少なくとも 配列 のサイズを初期化する必要があります)
通常は int[] 、string[]... 実際には、次のように array 配列 を宣言します。
string [] srt=new string[]{"a","b"}; int[] a=new int[2]; string [] srt=new string[3];
(1): type
data typeを欠落させることはできず、int[] a=new Array[ とは異なり、統一する必要があります。 ];(2): 配列のサイズを欠落させることはできません。そうでない場合、配列は固定長メモリであるため、C# はそれをエラーとみなします。
(3): 右側は角かっこです。 ] ではなく ()
注: array 配列には add、clear、addRange.. メソッドは提供されていませんが、次のように値
を直接設定または取得します。
2番目、C# ArrayList配列の使用法:
var arrayList = new ArrayList(); arrayList.Add(1); arrayList.Add(2); arrayList.Add(50.0); //在.net 4.0 支持。具体为什么还没有研究 foreach (var array in arrayList) { Console.WriteLine(array); }
var arrayList = new List<int>(); arrayList.Add(1); arrayList.Add(2); arrayList.Add(50); //ArrayList 数组中的值拷贝到Array中去 int[] array1=new int[arrayList.Count]; arrayList.CopyTo(array1); //方法一 int[] array2 = arrayList.ToArray(); //方法二
#1。宣言と同時にインスタンス化する必要がありますが (少なくとも配列のサイズを初期化する必要があります)、ArrayList は最初に宣言するだけで済みます。
例:
int[] array = new array[3]; 或 int[] array = {1,2,3}; 或 ArrayList myList = new ArrayList();
オブジェクト
のみを格納できます。同型オブジェクトは、同じ型のオブジェクトを参照します。配列が int[] として宣言されている場合、String[] は整数データのみを格納できますが、
object
ArrayList は、さまざまなタイプのデータを格納できます (ボックス化された Object オブジェクトを格納するためです。実際、ArrayList は、オブジェクトをカプセル化するために "object[] _items;" などのプライベート フィールドを使用します。)#3 CLR マネージドのストレージ メソッドペア
Array は常に連続的に格納されますが、ArrayList は必ずしも連続的に格納されるわけではありません。
#4 初期化サイズ
は指定されたサイズにのみ初期化する必要があり、作成後の配列のサイズは固定です
ArrayListのサイズは動的に指定でき、そのサイズは初期化時に指定されますが、未指定のままにすることもできます。つまり、オブジェクトのスペースを任意に増やすことができます。 #5 Array では項目を自由に追加したり削除したりすることはできませんが、ArrayList では任意の位置に項目を挿入したり削除したりできます。
5. [Array と ArrayList の類似点]
#1 どちらもインデックスを持っています。つまり、インデックスを通じて任意の項目を直接取得および変更できます。#2 作成されたオブジェクトはマネージド ヒープに配置されます。 #3 どちらも自分自身を列挙できます (これらはすべて IEnumerable インターフェイスを実装しているため)。
6. [ArrayListの一部の機能]
var arrayList = new List<int>(2); Console.WriteLine(arrayList.Capacity); int size = 2; for (int i = 0; i < size; i++) { arrayList.Add(i); } Console.WriteLine("compressed capacity:"+arrayList.Capacity);
サイズが3または4の場合、「現在の容量」は4、いつサイズが 5 ~ 8 の場合、「電流容量」は 8、 サイズが 9 ~ 16 の場合、「電流容量」は 16、
実験を通じて、実際の値が変化するたびに結論を導き出すことができます。 ArrayList 内のオブジェクトの数 (ArrayList.Count) が独自の容量しきい値を超えると、しきい値は自動的に 2 倍になります
ArrayList myList = new ArrayList(5); for (int i = 0; i < 3; i++) { myList.Add(i); } Console.WriteLine("actual capacity:" + myList.Capacity); myList.TrimToSize(); Console.WriteLine("compressed capacity:" + myList.Capacity); Console.ReadLine();
actual capacity:5 compressed capacity:3
以上がC#のArrayとArrayListの違いを詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。