List<T>.IndexOf Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Returnerar det nollbaserade indexet för den första förekomsten av ett värde i List<T> eller i en del av det.
Överlagringar
| Name | Description |
|---|---|
| IndexOf(T, Int32) |
Söker efter det angivna objektet och returnerar det nollbaserade indexet för den första förekomsten inom elementintervallet List<T> i som sträcker sig från det angivna indexet till det sista elementet. |
| IndexOf(T, Int32, Int32) |
Söker efter det angivna objektet och returnerar det nollbaserade indexet för den första förekomsten inom elementintervallet List<T> i det som börjar vid det angivna indexet och innehåller det angivna antalet element. |
| IndexOf(T) |
Söker efter det angivna objektet och returnerar det nollbaserade indexet för den första förekomsten i hela List<T>. |
Exempel
I följande exempel visas alla tre överlagringarna av IndexOf metoden. En List<T> sträng skapas, med en post som visas två gånger, på indexplats 0 och indexplats 5. Metodens IndexOf(T) överlagring söker i listan från början och hittar den första förekomsten av strängen. Metodens IndexOf(T, Int32) överlagring används för att söka i listan från och med indexplats 3 och fortsätta till slutet av listan och hittar den andra förekomsten av strängen. Slutligen används metodöverlagringen IndexOf(T, Int32, Int32) för att söka i ett intervall med två poster, som börjar på indexplats två. Den returnerar -1 eftersom det inte finns några instanser av söksträngen i det intervallet.
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)
Söker efter det angivna objektet och returnerar det nollbaserade indexet för den första förekomsten inom elementintervallet List<T> i som sträcker sig från det angivna indexet till det sista elementet.
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
Parametrar
- item
- T
Objektet som ska hittas List<T>i . Värdet kan vara null för referenstyper.
- index
- Int32
Det nollbaserade startindexet för sökningen. 0 (noll) är giltigt i en tom lista.
Returer
Det nollbaserade indexet för den första förekomsten av item inom elementintervallet List<T> i som sträcker sig från index till det sista elementet, om det hittas, annars -1.
Undantag
index ligger utanför intervallet för giltiga index för List<T>.
Kommentarer
List<T> Söks framåt med början vid index och slutar vid det sista elementet.
Den här metoden avgör likhet med standardjämlikhetsjämföraren EqualityComparer<T>.Default för T, typen av värden i listan.
Den här metoden utför en linjär sökning. Därför är den här metoden en O(n) åtgärd, där n är antalet element från index till slutet av List<T>.
Se även
Gäller för
IndexOf(T, Int32, Int32)
Söker efter det angivna objektet och returnerar det nollbaserade indexet för den första förekomsten inom elementintervallet List<T> i det som börjar vid det angivna indexet och innehåller det angivna antalet element.
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
Parametrar
- item
- T
Objektet som ska hittas List<T>i . Värdet kan vara null för referenstyper.
- index
- Int32
Det nollbaserade startindexet för sökningen. 0 (noll) är giltigt i en tom lista.
- count
- Int32
Antalet element i avsnittet som ska sökas.
Returer
Det nollbaserade indexet för den första förekomsten av item inom elementintervallet List<T> i som börjar vid index och innehåller antalet element, om det hittas count , annars -1.
Undantag
index ligger utanför intervallet för giltiga index för List<T>.
-eller-
count är mindre än 0.
-eller-
index och count ange inte ett giltigt avsnitt i List<T>.
Kommentarer
List<T> Söks framåt med början vid index och slutar på index plus count minus 1, om count är större än 0.
Den här metoden avgör likhet med standardjämlikhetsjämföraren EqualityComparer<T>.Default för T, typen av värden i listan.
Den här metoden utför en linjär sökning. Därför är den här metoden en O(n) åtgärd, där n är count.
Se även
Gäller för
IndexOf(T)
Söker efter det angivna objektet och returnerar det nollbaserade indexet för den första förekomsten i hela List<T>.
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
Parametrar
- item
- T
Objektet som ska hittas List<T>i . Värdet kan vara null för referenstyper.
Returer
Det nollbaserade indexet för den första förekomsten av item i hela List<T>, om det hittas, annars -1.
Implementeringar
Kommentarer
List<T> Söks framåt med början vid det första elementet och slutar vid det sista elementet.
Den här metoden avgör likhet med standardjämlikhetsjämföraren EqualityComparer<T>.Default för T, typen av värden i listan.
Den här metoden utför en linjär sökning. Därför är den här metoden en O(n) åtgärd, där n är Count.