C#のListから要素を削除する方法について紹介します!使い方を覚えて活用しよう

- システム
エンジニア - C#でのListの要素を削除するにはどうすればいいのですか。
- プロジェクト
マネージャー - Remove、RemoveAt、RemoveRange、RemoveAll、Clear関数を使った要素の削除方法について紹介します。
[C#]Listの要素削除方法とは?
今回は、C#のListから要素を削除する方法について説明します。ここでは、Remove、RemoveAt、RemoveRange、RemoveAll、Clear関数を使った、要素の削除方法について紹介します。
C#のListから要素を削除する方法に興味のある方はぜひご覧ください。
Removeで削除
C#において、Remove関数でListの要素を削除する方法を紹介します。Remove関数は、要素指定で削除します。実際のソースコードを見てみましょう。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
using System.Collections.Generic; public class Hello{ public static void Main(){ // 初期化 var mylist = new List<string>(){ “red”, “green”, “blue” }; // 要素の表示 System.Console.WriteLine(“{0}”, string.Join(“,”, mylist)); // red,green,blue // 要素の削除(要素指定) mylist.Remove(“red”); // 要素の表示 System.Console.WriteLine(“{0}”, string.Join(“,”, mylist)); // green,blue } } |
実行結果は以下のようになります。Removeの指定要素が複数存在する場合、先頭の要素のみが削除されます。
1 2 |
red,green,blue green,blue |
このように、C#ではRemove関数でListの要素を削除できます。
RemoveAtで削除
C#において、RemoveAt関数でListの要素を削除する方法を紹介します。RemoveAt関数は、インデックス指定で要素を削除します。実際のソースコードを見てみましょう。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
using System.Collections.Generic; public class Hello{ public static void Main(){ // 初期化 var mylist = new List<string>(){ “red”, “green”, “blue” }; // 要素の表示 System.Console.WriteLine(“{0}”, string.Join(“,”, mylist)); // red,green,blue // 先頭要素の削除 mylist.RemoveAt(0); // 要素の表示 System.Console.WriteLine(“{0}”, string.Join(“,”, mylist)); // green,blue // 末尾要素の削除 mylist.RemoveAt(mylist.Count -1); // 要素の表示 System.Console.WriteLine(“{0}”, string.Join(“,”, mylist)); // green } } |
実行結果は以下のようになります。Countを使用することで、末尾要素を削除できます。
1 2 3 |
red,green,blue green,blue green |
RemoveRangeで削除
C#において、RemoveRange関数でListの要素を削除する方法を紹介します。RemoveRange関数は、インデックス・個数指定で要素を削除します。実際のソースコードを見てみましょう。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
using System.Collections.Generic; public class Hello{ public static void Main(){ // 初期化 var mylist = new List<string>(){ “red”, “green”, “blue” }; // 要素の表示 System.Console.WriteLine(“{0}”, string.Join(“,”, mylist)); // red,green,blue // 要素の削除(インデックス1から2つ削除) mylist.RemoveRange(1, 2); // 要素の表示 System.Console.WriteLine(“{0}”, string.Join(“,”, mylist)); // red } } |
実行結果は以下のようになります。上記の場合、インデックス1から2つの要素を削除します。
1 2 |
red,green,blue red |
RemoveAllで削除
C#において、RemoveAll関数でListの要素を削除する方法を紹介します。RemoveAll関数は、要素を検索して削除します。実際のソースコードを見てみましょう。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
using System.Collections.Generic; public class Hello{ public static void Main(){ // 初期化 var mylist = new List<string>(){ “red”, “green”, “blue”, “yellow”, “black”, “white” }; // 要素の表示 System.Console.WriteLine(“{0}”, string.Join(“,”, mylist)); // red,green,blue,yellow,black,white // 要素の削除(green) mylist.RemoveAll(item => item == “green”); // 要素の表示 System.Console.WriteLine(“{0}”, string.Join(“,”, mylist)); // red,blue,yellow,black,white // 要素の削除(aを含む要素) mylist.RemoveAll(item => item.Contains(“a”)); // 要素の表示 System.Console.WriteLine(“{0}”, string.Join(“,”, mylist)); // red,blue,yellow,white // 要素の削除(4文字を超える要素) mylist.RemoveAll(item => item.Length > 4); // 要素の表示 System.Console.WriteLine(“{0}”, string.Join(“,”, mylist)); // red,blue } } |
実行結果は以下のようになります。
1 2 3 4 |
red,green,blue,yellow,black,white red,blue,yellow,black,white red,blue,yellow,white red,blue |
Remove関数は一致した先頭要素のみを削除しますが、RemoveAll関数は、一致した全要素を削除します。
Clearで削除
C#において、Clear関数でListの要素を全削除する方法を紹介します。Clear関数は、全要素を削除します。実際のソースコードを見てみましょう。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
using System.Collections.Generic; public class Hello{ public static void Main(){ // 初期化 var mylist = new List<string>(){ “red”, “green”, “blue” }; // 要素の表示 System.Console.WriteLine(“{0}”, string.Join(“,”, mylist)); // red,green,blue // 要素の全削除 mylist.Clear(); // サイズの表示 System.Console.WriteLine(mylist.Count); // 0 } } |
実行結果は以下のようになります。全要素を削除するので、要素数が0になっていることが分かります。
1 2 |
red,green,blue 0 |
- システム
エンジニア - Remove、RemoveAt、RemoveRange、RemoveAll、Clear関数を使ってListの要素を削除するのですね。
- プロジェクト
マネージャー - その通りです。それぞれ削除する対象が異なりますので、しっかり理解して活用してください。
まとめ
いかがでしたでしょうか。C#のListから要素を削除する方法について説明しました。ここでは、Remove、RemoveAt、RemoveRange、RemoveAll、Clear関数を使った、要素の削除方法について紹介しました。
ぜひご自身でC#のソースコードを書いて、理解を深めてください。
FEnet.NETナビ・.NETコラムは株式会社オープンアップシステムが運営しています。
株式会社オープンアップシステムはこんな会社です
秋葉原オフィスには株式会社オープンアップシステムをはじめグループのIT企業が集結!
数多くのエンジニアが集まります。

-
スマホアプリから業務系システムまで
スマホアプリから業務系システムまで開発案件多数。システムエンジニア・プログラマーとしての多彩なキャリアパスがあります。
-
充実した研修制度
毎年、IT技術のトレンドや社員の要望に合わせて、カリキュラムを刷新し展開しています。社内講師の丁寧なサポートを受けながら、自分のペースで学ぶことができます。
-
資格取得を応援
スキルアップしたい社員を応援するために資格取得一時金制度を設けています。受験料(実費)と合わせて資格レベルに合わせた最大10万円の一時金も支給しています。
-
東証プライム上場企業グループ
オープンアップシステムは東証プライム上場「株式会社オープンアップグループ」のグループ企業です。
安定した経営基盤とグループ間のスムーズな連携でコロナ禍でも安定した雇用を実現させています。
株式会社オープンアップシステムに興味を持った方へ
株式会社オープンアップシステムでは、開発系エンジニア・プログラマを募集しています。
年収をアップしたい!スキルアップしたい!大手の上流案件にチャレンジしたい!
まずは話だけでも聞いてみたい場合もOK。お気軽にご登録ください。


C#新着案件New Job
システム開発/東京都新宿区/【WEB面談可/C#経験者/20代前半の方活躍中/経験1年以上の方活躍中】/在宅勤務
月給29万~34万円東京都新宿区(新宿駅)システム開発/東京都新宿区/【WEB面談可/C#経験者/20代後半~40代の方活躍中/経験年数不問】/在宅勤務
月給41万~50万円東京都新宿区(新宿駅)デバック、テスト項目の作成/神奈川県横浜市/【WEB面談可/C#経験者/20代前半の方活躍中/経験1年以上の方活躍中】/在宅勤務
月給29万~34万円神奈川県横浜市(桜木町駅)デバック、テスト項目の作成/神奈川県横浜市/【WEB面談可/C#経験者/20代後半~40代の方活躍中/経験年数不問】/在宅勤務
月給41万~50万円神奈川県横浜市(桜木町駅)基幹システム開発導入/東京都新宿区/【WEB面談可/C#経験者/20代前半の方活躍中/経験1年以上の方活躍中】/在宅勤務
月給29万~34万円東京都新宿区(西新宿駅)基幹システム開発導入/東京都新宿区/【WEB面談可/C#経験者/20代後半~40代の方活躍中/経験年数不問】/在宅勤務
月給41万~50万円東京都新宿区(西新宿駅)