[C#]List(リスト)の要素のインデックスを取得するには?

C#

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

List(リスト)の要素のインデックスを取得する方法を紹介します。

スポンサーリンク

方法

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

List(リスト)の要素のインデックスを取得する方法は、2つあります。

IndexOf()メソッド

1つは、IndexOf()メソッドを使う方法です。

まず、ListからIndexOfメソッドを呼び出します。

そして、IndexOfメソッドの引数に要素を指定します。

list.IndexOf(item);

IndexOf()メソッドは、リスト内の引数に指定した要素のインデックスを返します。

同じ要素が複数ある場合は、先頭の要素のインデックスを取得します。

使用例

using System;
using System.Collections.Generic;

public class Example
{   
	public static void Main()
	{
		List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
		
		var index1 = numbers.IndexOf(3);
		var index2 = numbers.IndexOf(5);
		
		Console.WriteLine(index1); //2
		Console.WriteLine(index2); //4
 	}
}

FindIndex()メソッド

もう1つは、FindIndex()メソッドを使う方法です。

まず、リストからFindIndex()メソッドを呼び出します。

FindIndexメソッドの引数に、引数を1つ持つラムダ式を指定します。

そして、FindIndex()メソッドの引数のラムダ式で「引数 == item」を返します。

list.FindIndex(value => value == item);

同じ要素が複数ある場合は、FindIndex()メソッドは先頭の要素のインデックスを取得します。

使用例

using System;
using System.Collections.Generic;

public class Example
{   
	public static void Main()
	{
		List<int> numbers = new List<int> { 1, 2, 3, 4, 5 , 3};
		
		var index1 = numbers.FindIndex(item => item == 3);
		var index2 = numbers.FindIndex(item => item == 5);
		
		Console.WriteLine(index1); //2
		Console.WriteLine(index2); //4
 	}
}

まとめ

List(リスト)の要素のインデックスを取得する方法は、次の2つです。

  • IndexOf()メソッドを使う方法
  • FindIndex()を使う方法

コメント

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