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

C#でListの指定したインデックスから要素を削除する方法

C#のList<T>から指定したインデックス位置の要素を削除するには、RemoveAtメソッドを使用します。削除後は要素数が1つ減り、後続の要素が自動的に前に詰められます。以下に具体的なコード例を示します。

例1:文字列のListから要素を削除する

using System;
using System.Collections.Generic;

public class Demo {
   public static void Main(String[] args){
      List<string> list = new List<string>();
      list.Add("Ryan");
      list.Add("Kevin");
      list.Add("Andre");
      list.Add("Tom");
      list.Add("Fred");
      list.Add("Jason");
      list.Add("Jacob");
      list.Add("David");
      Console.WriteLine("Count of elements in the List = "+list.Count);
      Console.WriteLine("Enumerator iterates through the list elements...");
      List<string>.Enumerator demoEnum = list.GetEnumerator();
      while (demoEnum.MoveNext()) {
         string res = demoEnum.Current;
         Console.WriteLine(res);
      }
      list.RemoveAt(5);
      Console.WriteLine("\nCount of elements in the List [UPDATED] = "+list.Count);
      Console.WriteLine("Enumerator iterates through the list elements...[UPDATED]");
      demoEnum = list.GetEnumerator();
      while (demoEnum.MoveNext()) {
         string res = demoEnum.Current;
         Console.WriteLine(res);
      }
   }
}

この例では、8つの名前を持つ文字列型のListを作成し、RemoveAt(5)によってインデックス5(6番目)の要素「Jason」を削除しています。

出力

Count of elements in the List = 8
Enumerator iterates through the list elements...
Ryan
Kevin
Andre
Tom
Fred
Jason
Jacob
David

Count of elements in the List [UPDATED] = 7
Enumerator iterates through the list elements...[UPDATED]
Ryan
Kevin
Andre
Tom
Fred
Jacob
David

実行結果を見ると、「Jason」が削除され、要素数が8から7に変化していることが確認できます。

例2:数値のListから要素を削除する

次に、int型のListに対してRemoveAtメソッドを使用する別の例を見てみましょう。

using System;
using System.Collections.Generic;

public class Demo {
   public static void Main(String[] args){
      List<int> list = new List<int>();
      list.Add(25);
      list.Add(50);
      list.Add(75);
      list.Add(100);
      list.Add(200);
      Console.WriteLine("Count of elements in the List = "+list.Count);
      list.RemoveAt(2);
      Console.WriteLine("\nCount of elements in the List [UPDATED] = "+list.Count);
   }
}

この例では、インデックス2(3番目)に格納されている値「75」が削除されます。

出力

Count of elements in the List = 5
Count of elements in the List [UPDATED] = 4

注意点

RemoveAtメソッドに、0未満またはリストの要素数以上のインデックスを指定すると、ArgumentOutOfRangeExceptionがスローされます。そのため、呼び出し前にインデックスが有効な範囲内であることを確認しておくと安全です。

  1. Pythonでリストの最後から2番目の要素を取得する方法

    Pythonでリストの最後から2番目の要素を取得するには?Pythonでは、リストをはじめとするシーケンス型オブジェクトに対して、インデックス(添字)を使って各要素にアクセスできます。通常は0から始まるインデックスで要素を参照しますが、負の数を指定した場合は、リストの末尾から数えた位置として解釈されるのが特徴です。したがって、リストの最後から2番目の要素を取得したい場合は、インデックスとして -2 を指定します。>>> L1 = [1, 2, 3, 4, 5]>>> print(L1[-2])4この例では、リスト L1 の末尾から数えて2番目の要素である「4

  2. Pythonでリストの最後の要素を取得する方法【初心者向け】

    Pythonでリストの最後の要素を取得する基本方法 Pythonでは、リストをはじめとするシーケンス型オブジェクトに対して、インデックス(添字)を使って任意の要素にアクセスできます。インデックスは0から始まるため、最初の要素は「0」、2番目の要素は「1」というように指定します。 ここで重要になるのが負のインデックスです。負の数を指定すると、リストの末尾から逆順に数えて要素を取得できます。したがって、リストの最後の要素を取得したい場合は、インデックスとして -1 を指定するだけでOKです。 >>> L1 = [1, 2, 3, 4, 5] >>> print(