C#でArrayListの指定したインデックスにある要素を削除する方法
ArrayListから指定したインデックス位置の要素を削除するには、RemoveAt()メソッドを使用します。このメソッドは、引数に渡されたインデックス番号に対応する要素を削除し、その後ろにある要素は自動的に前に詰められます。インデックスは0から始まるため注意してください。
例1
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);
}
Console.WriteLine("ArrayList2の要素数 = " + list2.Count);
list2.RemoveAt(5);
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 ArrayList2の要素数 = 9 ArrayList2の要素数(更新後) = 8
この例では、RemoveAt(5)によってインデックス5(6番目)の要素「F」が削除され、要素数が9から8に減少しています。
例2
もう一つの例を見てみましょう −
using System;
using System.Collections;
public class Demo {
public static void Main(String[] args) {
ArrayList list1 = new ArrayList();
list1.Add("Laptop");
list1.Add("Dektop");
list1.Add("Wearables");
list1.Add("Tablet");
list1.Add("Notebook");
list1.Add("Ultrabooks");
Console.WriteLine("ArrayList1の要素...");
foreach (string res in list1) {
Console.WriteLine(res);
}
Console.WriteLine("ArrayListの要素数 = " + list1.Count);
list1.RemoveAt(2);
Console.WriteLine("ArrayListの要素数(更新後) = " + list1.Count);
}
}
出力
このコードの出力は以下のとおりです −
ArrayList1の要素... Laptop Dektop Wearables Tablet Notebook Ultrabooks ArrayListの要素数 = 6 ArrayListの要素数(更新後) = 5
ここではRemoveAt(2)により、インデックス2(3番目)の要素「Wearables」が削除され、要素数が6から5になっています。なお、存在しないインデックスを指定した場合はArgumentOutOfRangeExceptionがスローされるため、事前にCountプロパティなどで範囲チェックを行うことが推奨されます。
-
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);
-
C#でHashSetに指定された要素が含まれているか確認する方法
C#のHashSet<T>に特定の要素が含まれているかどうかを確認するには、Contains()メソッドを使用します。このメソッドは、指定した要素がHashSet内に存在する場合はtrue、存在しない場合はfalseを返します。Contains()メソッドの基本構文public bool Contains (T item);引数には検索対象の要素を渡します。HashSetはハッシュテーブルを基盤としているため、要素の検索はO(1)の計算量で実行でき、非常に高速です。例1:数値型のHashSetでContains()を使う以下は、int型のHashSetに対してContains()メ