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

C#のArrayListからすべての要素を削除する方法


C#のArrayListからすべての要素を削除するには、Clear()メソッドを使用します。Clear()メソッドを呼び出すと、コレクション内の全要素が削除され、要素数(Count)は0になります。

例1:ArrayListの全要素を削除する

using System;
using System.Collections;
public class Demo {
    public static void Main(String[] args){
        ArrayList list1 = new ArrayList();
        list1.Add("A");
        list1.Add("B");
        list1.Add("C");
        list1.Add("D");
        list1.Add("E");
        list1.Add("F");
        list1.Add("G");
        list1.Add("H");
        list1.Add("I");
        Console.WriteLine("ArrayList1の要素...");
        foreach (string res in list1){
            Console.WriteLine(res);
        }
        ArrayList list2 = new ArrayList();
        list2.Add("A");
        list2.Add("B");
        list2.Add("C");
        list2.Add("D");
        list2.Add("E");
        list2.Add("F");
        list2.Add("G");
        list2.Add("H");
        list2.Add("I");
        Console.WriteLine("ArrayList2の要素...");
        foreach (string res in list2){
            Console.WriteLine(res);
        }
        ArrayList list3 = new ArrayList();
        list3 = list2;
        Console.WriteLine("ArrayList3はArrayList2と等しいか? = " + list3.Equals(list2));
        Console.WriteLine("ArrayList2の要素数 = " + list2.Count);
        list2.Clear();
        Console.WriteLine("ArrayList2の要素数(更新後) = " + list2.Count);
    }
}

出力結果

上記のコードを実行すると、次のような出力が得られます。

ArrayList1の要素...
A
B
C
D
E
F
G
H
I
ArrayList2の要素...
A
B
C
D
E
F
G
H
I
ArrayList3はArrayList2と等しいか? = True
ArrayList2の要素数 = 9
ArrayList2の要素数(更新後) = 0

ポイント解説

  • list3 = list2; ではオブジェクトそのものではなく参照がコピーされます。そのため、list3とlist2は同じインスタンスを指しており、Equals()による比較結果はTrueになります。
  • list2.Clear(); を呼び出すことで、ArrayList2の全要素が一括で削除され、Countは0になります。
  • list3はlist2と同じオブジェクトを参照しているため、Clear()の実行後にlist3の要素も空になっている点に注意してください。

例2:別のArrayListで全要素を削除する

続いて、もう少しシンプルな例を見てみましょう。

using System;
using System.Collections;
public class Demo {
    public static void Main(String[] args){
        ArrayList arrList = new ArrayList();
        arrList.Add("One");
        arrList.Add("Two");
        arrList.Add("Three");
        arrList.Add("Four");
        arrList.Add("Five");
        Console.WriteLine("ArrayListの要素...");
        foreach (string res in arrList){
            Console.WriteLine(res);
        }
        Console.WriteLine("ArrayListの要素数 = " + arrList.Count);
        arrList.Clear();
        Console.WriteLine("ArrayListの要素数(更新後) = " + arrList.Count);
    }
}

出力結果

上記のコードを実行すると、次のような出力が得られます。

ArrayListの要素...
One
Two
Three
Four
Five
ArrayListの要素数 = 5
ArrayListの要素数(更新後) = 0

まとめ

ArrayListの全要素を一括で削除したい場合は、Clear()メソッドを使うのが最もシンプルで効率的です。Remove()やRemoveAt()をループで繰り返し呼び出す必要はなく、たった1行のコードでコレクションを空にできます。要素を削除してもArrayList自体は再利用可能なので、同じインスタンスに新しい要素を追加し続けることもできます。

  1. JavaでArrayListのすべての要素を削除する方法(clearメソッドの使い方)

    JavaのArrayListからすべての要素を一括で削除したい場合は、clear()メソッドを使用します。この記事では、実際のコード例を通じて、ArrayListの全要素を削除する手順をわかりやすく解説します。1. 要素を持つArrayListを作成するまず、複数の要素を格納したArrayListを用意しましょう。以下の例では、Integer型のArrayListに7つの数値を追加しています。ArrayList<Integer> arrlist = new ArrayList<Integer>(5); arrlist.add(25); arrlist.add(50);

  2. JavaでArrayListから重複要素を削除する方法【Set・Stream API活用】

    JavaのSetインターフェースは、重複する要素を許容しないという特徴を持っています。このインターフェースのadd()メソッドは引数として受け取った要素をSetオブジェクトに追加し、追加が成功すればtrueを返します。一方、すでに存在する要素を追加しようとした場合、追加操作は失敗しfalseが返されます。この性質を利用することで、ArrayList内の重複要素を簡単に取り除くことができます。 Setを使って重複を削除する基本手順 ArrayListオブジェクトから冗長な要素を削除するには、以下の手順に従います。 対象となるArrayListを作成(または取得)します。 空のSetオブジェクト