List<T>.IndexOf メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
List<T>またはその一部で最初に出現する値の 0 から始まるインデックスを返します。
オーバーロード
| 名前 | 説明 |
|---|---|
| IndexOf(T, Int32) |
指定したオブジェクトを検索し、指定したインデックスから最後の要素までの List<T> 内の要素の範囲内で最初に見つかった位置の 0 から始まるインデックスを返します。 |
| IndexOf(T, Int32, Int32) |
指定したオブジェクトを検索し、指定したインデックスから始まり、指定した数の要素を含む List<T> 内の要素の範囲内で最初に出現する 0 から始まるインデックスを返します。 |
| IndexOf(T) |
指定したオブジェクトを検索し、 List<T>全体で最初に見つかった位置の 0 から始まるインデックスを返します。 |
例
次の例では、 IndexOf メソッドの 3 つのオーバーロードすべてを示します。 インデックスの場所 0 とインデックスの場所 5 に、1 つのエントリが 2 回表示される文字列の List<T> が作成されます。 IndexOf(T) メソッドのオーバーロードは、最初からリストを検索し、文字列の最初の出現箇所を検索します。 IndexOf(T, Int32) メソッドのオーバーロードは、インデックス位置 3 で始まり、リストの末尾まで続くリストを検索し、文字列の 2 番目の出現箇所を検索するために使用されます。 最後に、 IndexOf(T, Int32, Int32) メソッドのオーバーロードは、インデックス位置 2 から始まる 2 つのエントリの範囲を検索するために使用されます。その範囲内に検索文字列のインスタンスがないため、-1 が返されます。
using System;
using System.Collections.Generic;
public class Example
{
public static void Main()
{
List<string> dinosaurs = new List<string>();
dinosaurs.Add("Tyrannosaurus");
dinosaurs.Add("Amargasaurus");
dinosaurs.Add("Mamenchisaurus");
dinosaurs.Add("Brachiosaurus");
dinosaurs.Add("Deinonychus");
dinosaurs.Add("Tyrannosaurus");
dinosaurs.Add("Compsognathus");
Console.WriteLine();
foreach(string dinosaur in dinosaurs)
{
Console.WriteLine(dinosaur);
}
Console.WriteLine("\nIndexOf(\"Tyrannosaurus\"): {0}",
dinosaurs.IndexOf("Tyrannosaurus"));
Console.WriteLine("\nIndexOf(\"Tyrannosaurus\", 3): {0}",
dinosaurs.IndexOf("Tyrannosaurus", 3));
Console.WriteLine("\nIndexOf(\"Tyrannosaurus\", 2, 2): {0}",
dinosaurs.IndexOf("Tyrannosaurus", 2, 2));
}
}
/* This code example produces the following output:
Tyrannosaurus
Amargasaurus
Mamenchisaurus
Brachiosaurus
Deinonychus
Tyrannosaurus
Compsognathus
IndexOf("Tyrannosaurus"): 0
IndexOf("Tyrannosaurus", 3): 5
IndexOf("Tyrannosaurus", 2, 2): -1
*/
Imports System.Collections.Generic
Public Class Example
Public Shared Sub Main()
Dim dinosaurs As New List(Of String)
dinosaurs.Add("Tyrannosaurus")
dinosaurs.Add("Amargasaurus")
dinosaurs.Add("Mamenchisaurus")
dinosaurs.Add("Brachiosaurus")
dinosaurs.Add("Deinonychus")
dinosaurs.Add("Tyrannosaurus")
dinosaurs.Add("Compsognathus")
Console.WriteLine()
For Each dinosaur As String In dinosaurs
Console.WriteLine(dinosaur)
Next
Console.WriteLine(vbLf & _
"IndexOf(""Tyrannosaurus""): {0}", _
dinosaurs.IndexOf("Tyrannosaurus"))
Console.WriteLine(vbLf & _
"IndexOf(""Tyrannosaurus"", 3): {0}", _
dinosaurs.IndexOf("Tyrannosaurus", 3))
Console.WriteLine(vbLf & _
"IndexOf(""Tyrannosaurus"", 2, 2): {0}", _
dinosaurs.IndexOf("Tyrannosaurus", 2, 2))
End Sub
End Class
' This code example produces the following output:
'
'Tyrannosaurus
'Amargasaurus
'Mamenchisaurus
'Brachiosaurus
'Deinonychus
'Tyrannosaurus
'Compsognathus
'
'IndexOf("Tyrannosaurus"): 0
'
'IndexOf("Tyrannosaurus", 3): 5
'
'IndexOf("Tyrannosaurus", 2, 2): -1
IndexOf(T, Int32)
指定したオブジェクトを検索し、指定したインデックスから最後の要素までの List<T> 内の要素の範囲内で最初に見つかった位置の 0 から始まるインデックスを返します。
public:
int IndexOf(T item, int index);
public int IndexOf(T item, int index);
member this.IndexOf : 'T * int -> int
Public Function IndexOf (item As T, index As Integer) As Integer
パラメーター
- item
- T
List<T>内で検索するオブジェクト。 値は参照型に null できます。
- index
- Int32
検索の 0 から始まる開始インデックス。 空のリストでは 0 (ゼロ) が有効です。
返品
indexから最後の要素まで続くList<T>内で最初に出現するitemの 0 から始まるインデックス 。それ以外の場合は -1。
例外
index が、 List<T>の有効なインデックスの範囲外です。
注釈
List<T>は、indexから最後の要素で終わる順に検索されます。
このメソッドは、リスト内の値の型であるEqualityComparer<T>.Defaultの既定の等値比較子Tを使用して等価性を決定します。
このメソッドは線形検索を実行します。したがって、このメソッドは O(n) 演算であり、 n は index から List<T>の末尾までの要素の数です。
こちらもご覧ください
適用対象
IndexOf(T, Int32, Int32)
指定したオブジェクトを検索し、指定したインデックスから始まり、指定した数の要素を含む List<T> 内の要素の範囲内で最初に出現する 0 から始まるインデックスを返します。
public:
int IndexOf(T item, int index, int count);
public int IndexOf(T item, int index, int count);
member this.IndexOf : 'T * int * int -> int
Public Function IndexOf (item As T, index As Integer, count As Integer) As Integer
パラメーター
- item
- T
List<T>内で検索するオブジェクト。 値は参照型に null できます。
- index
- Int32
検索の 0 から始まる開始インデックス。 空のリストでは 0 (ゼロ) が有効です。
- count
- Int32
検索するセクション内の要素の数。
返品
indexから始まり、見つかった場合は要素の数count含む、List<T>内の要素の範囲内で最初に出現するitemの 0 から始まるインデックス。それ以外の場合は -1。
例外
注釈
countが 0 より大きい場合、List<T>は index から始まり、index + count - 1 で終わる順に検索されます。
このメソッドは、リスト内の値の型であるEqualityComparer<T>.Defaultの既定の等値比較子Tを使用して等価性を決定します。
このメソッドは線形検索を実行します。したがって、このメソッドは O(n) 演算であり、 n は count。
こちらもご覧ください
適用対象
IndexOf(T)
指定したオブジェクトを検索し、 List<T>全体で最初に見つかった位置の 0 から始まるインデックスを返します。
public:
virtual int IndexOf(T item);
public int IndexOf(T item);
abstract member IndexOf : 'T -> int
override this.IndexOf : 'T -> int
Public Function IndexOf (item As T) As Integer
パラメーター
- item
- T
List<T>内で検索するオブジェクト。 値は参照型に null できます。
返品
List<T>全体で最初に出現するitemの 0 から始まるインデックス (見つかった場合)。 それ以外の場合は -1。
実装
注釈
List<T>は、最初の要素から始まり、最後の要素で終わる順に検索されます。
このメソッドは、リスト内の値の型であるEqualityComparer<T>.Defaultの既定の等値比較子Tを使用して等価性を決定します。
このメソッドは線形検索を実行します。したがって、このメソッドは O(n) 演算であり、 n は Count。