[C#]配列で条件を満たす要素のインデックスを検索するには?

C#

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

配列(array)で条件を満たす要素のインデックス(index)を検索する方法を紹介します。

スポンサーリンク

方法

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

配列(array)で条件を満たす要素のインデックス(index)を検索するには、Array.FindIndex()を使います。

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

Array.FindIndex()の第1引数に配列、第2引数に引数1つのラムダ式を指定します。

ラムダ式で要素の条件式を返します。
(ラムダ式の引数で、配列の要素を取得)

//arr=対象の配列, condition=条件式
int result = Array.FindIndex(arr, item => condition);

上記のFindIndex()は、配列を条件式で検索し、最初に条件を満たした要素(条件式でtrueを返した要素)のインデックスを取得します。

指定した要素が配列内に存在しない場合、FindIndex()は「-1」を返します。

スポンサーリンク

使用例

using System;
 
public class Example
{
	public static void Main()
	{
		string[] nums = new string[5] { "one", "two", "three", "four", "five" };
		
		int result = Array.FindIndex(nums, item => item == "two");
		int result2 = Array.FindIndex(nums, item => item.Length == 5);
		
		Console.WriteLine(result);
		Console.WriteLine(result2);
	}
}
出力:
1
2

コメント

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