[C#]Array.FindAll()で複数の要素を削除するには?

C#

どうも、ちょげ(@chogetarou)です。

Array.FindAll()を使って、配列(Array)から複数の要素をまとめて削除する方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

Array.FindAll()を使って、配列(Array)から複数の要素をまとめて削除するには、ラムダ式を使います。

まず、Array.FindAll()を呼び出します。

そして、Array.FindAll()の第1引数に配列、第2引数に削除したい要素でFalseになる条件式を返すラムダ式を指定します。

//条件式は削除したい要素でFalseになるようにする
T[] result = Array.FindAll(array, item => 条件式);

上記のArray.FindAll()は、第2引数のラムダ式で返す条件式でFalseとなる要素を、第1引数の配列(Array)から削除した新しい(Array)を返します。

Array.FindAll()の第2引数のラムダ式は、引数で配列の要素を取得します。

使用例

using System;
public class Example
{
	public static void Main()
	{
		int[] numbers = new int[10] { 1, 2, 1, 3, 1, 1, 4, 5, 1, 1};
		
		int[] result = Array.FindAll(numbers, item => item != 1);
		
		Console.WriteLine(String.Join(",", result)); //2,3,4,5
 	}
}

コメント

タイトルとURLをコピーしました