C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#のArrayListとは?初期化・要素追加の基本をわかりやすく解説

ArrayListとは

ArrayListは、サイズを動的に変更できるリスト構造を実装したコレクションです。C#における非ジェネリック型のコレクションであり、要素を追加するたびに内部の容量が自動的に拡張されるという特徴を持っています。

ArrayListの初期化方法

C#でArrayListを初期化するには、以下のように記述します。

ArrayList arr = new ArrayList();

要素の追加方法

Addメソッドを使用すると、ArrayListの末尾に要素を追加できます。以下のコード例をご覧ください。

ArrayList arr1 = new ArrayList();
arr1.Add(120);
arr1.Add(160);

C#でのArrayList実装例

ここでは、AddメソッドとAddRangeメソッドを組み合わせた、完全なサンプルコードを紹介します。

サンプルコード

using System;
using System.Collections;

public class MyClass {
    public static void Main() {
        ArrayList arr1 = new ArrayList();
        arr1.Add(120);
        arr1.Add(160);

        ArrayList arr2 = new ArrayList();
        arr2.Add(200);
        arr2.Add(240);

        // arr2の全要素をarr1に一括追加
        arr1.AddRange(arr2);

        for (int i = 0; i < arr1.Count; i++)
            Console.WriteLine(arr1[i]);
    }
}

出力結果

120
160
200
240

このコードでは、まず2つのArrayList(arr1arr2)を作成し、それぞれに整数値を追加しています。続いてAddRangeメソッドを使うことで、arr2の全要素をarr1へ一括で追加しています。最後にCountプロパティを利用したforループで、すべての要素をコンソールに出力しています。

補足:List<T>との違い

ArrayListは非ジェネリック型のため、値型を格納する際にボックス化が発生し、パフォーマンスや型安全性の面で不利になる点に注意が必要です。現在のC#開発では、System.Collections.Generic名前空間のList<T>を使用することが一般的に推奨されています。既存コードの保守などでArrayListを扱う場合でも、この違いを理解しておくとよいでしょう。

  1. C#のListでRemoveAtメソッドを使って要素を削除する方法

    C#のRemoveAtメソッドは、リスト(List<T>)から指定したインデックス位置にある要素を削除するためのメソッドです。インデックスは0から始まるため、扱い方に注意が必要です。RemoveAtメソッドの基本構文list.RemoveAt(index);indexには削除したい要素の位置(0始まり)を指定します。なお、存在しないインデックスを指定した場合はArgumentOutOfRangeExceptionがスローされるので気をつけましょう。サンプルコードまず、リストに要素を追加します。var subjects = new List<string>(); subj

  2. C#でArrayListクラスを使うには?基本の使い方と主なプロパティを解説

    ArrayListクラスとはArrayListクラスは、個別にインデックスでアクセスできるオブジェクトの順序付きコレクションを表します。通常の配列と異なり、サイズが可変であるため、要素を自由に追加・削除できる点が大きな特徴です。そのため、配列の柔軟な代替手段として広く利用されてきました。ArrayListを使用するには、System.Collections名前空間をusingディレクティブで追加する必要があります。ArrayListクラスの主なプロパティ以下の表は、ArrayListクラスでよく使われる主なプロパティの一覧です。No.プロパティと説明1CapacityArrayListが格納で