List<T>.IndexOf Metodo
Definizione
Overload
IndexOf(T, Int32) |
Cerca l'oggetto specificato e restituisce l'indice in base zero della prima occorrenza all'interno dell'intervallo di elementi nell'oggetto List<T> che è compreso tra l'indice specificato e l'ultimo elemento.Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the List<T> that extends from the specified index to the last element. |
IndexOf(T, Int32, Int32) |
Cerca l'oggetto specificato e restituisce l'indice in base zero della prima occorrenza all'interno dell'intervallo di elementi nell'oggetto List<T> che inizia in corrispondenza dell'indice specificato e contiene il numero di elementi specificato.Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the List<T> that starts at the specified index and contains the specified number of elements. |
IndexOf(T) |
Cerca l'oggetto specificato e restituisce l'indice in base zero della prima occorrenza nell'intera classe List<T>.Searches for the specified object and returns the zero-based index of the first occurrence within the entire List<T>. |
IndexOf(T, Int32)
Cerca l'oggetto specificato e restituisce l'indice in base zero della prima occorrenza all'interno dell'intervallo di elementi nell'oggetto List<T> che è compreso tra l'indice specificato e l'ultimo elemento.Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the List<T> that extends from the specified index to the last element.
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
Parametri
- item
- T
Oggetto da individuare nella raccolta List<T>.The object to locate in the List<T>. Il valore può essere null
per i tipi di riferimento.The value can be null
for reference types.
- index
- Int32
Indice iniziale in base zero della ricerca.The zero-based starting index of the search. 0 (zero) è valido in un elenco vuoto.0 (zero) is valid in an empty list.
Restituisce
Indice in base zero della prima occorrenza di item
all'interno dell'intervallo di elementi dell'oggetto List<T> compreso tra index
e l'ultimo elemento, se presente; in caso contrario, -1.The zero-based index of the first occurrence of item
within the range of elements in the List<T> that extends from index
to the last element, if found; otherwise, -1.
Eccezioni
index
non è compreso nell'intervallo di indici validi per List<T>.index
is outside the range of valid indexes for the List<T>.
Esempi
Nell'esempio seguente vengono illustrati tutti e tre gli overload del metodo IndexOf.The following example demonstrates all three overloads of the IndexOf method. Viene creata una List<T> di stringhe, con una voce che viene visualizzata due volte, nella posizione dell'indice 0 e nella posizione di indice 5.A List<T> of strings is created, with one entry that appears twice, at index location 0 and index location 5. L'overload del metodo IndexOf(T) esegue la ricerca nell'elenco dall'inizio e trova la prima occorrenza della stringa.The IndexOf(T) method overload searches the list from the beginning, and finds the first occurrence of the string. L'overload del metodo IndexOf(T, Int32) viene usato per eseguire una ricerca nell'elenco a partire dalla posizione di indice 3 e continuare fino alla fine dell'elenco e trova la seconda occorrenza della stringa.The IndexOf(T, Int32) method overload is used to search the list beginning with index location 3 and continuing to the end of the list, and finds the second occurrence of the string. Infine, viene utilizzato l'overload del metodo IndexOf(T, Int32, Int32) per eseguire la ricerca in un intervallo di due voci, a partire dalla posizione di indice due; Restituisce-1 perché non sono presenti istanze della stringa di ricerca in tale intervallo.Finally, the IndexOf(T, Int32, Int32) method overload is used to search a range of two entries, beginning at index location two; it returns -1 because there are no instances of the search string in that range.
using namespace System;
using namespace System::Collections::Generic;
void main()
{
List<String^>^ dinosaurs = gcnew 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();
for each(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
*/
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
Commenti
Il List<T> viene cercato in futuro a partire da index
e termina in corrispondenza dell'ultimo elemento.The List<T> is searched forward starting at index
and ending at the last element.
Questo metodo determina l'uguaglianza utilizzando l'operatore di confronto di uguaglianza predefinito EqualityComparer<T>.Default per T
, il tipo di valori nell'elenco.This method determines equality using the default equality comparer EqualityComparer<T>.Default for T
, the type of values in the list.
Questo metodo esegue una ricerca lineare; Pertanto, questo metodo è un'operazione O (n), dove n è il numero di elementi da index
alla fine del List<T>.This method performs a linear search; therefore, this method is an O(n) operation, where n is the number of elements from index
to the end of the List<T>.
Vedi anche
IndexOf(T, Int32, Int32)
Cerca l'oggetto specificato e restituisce l'indice in base zero della prima occorrenza all'interno dell'intervallo di elementi nell'oggetto List<T> che inizia in corrispondenza dell'indice specificato e contiene il numero di elementi specificato.Searches for the specified object and returns the zero-based index of the first occurrence within the range of elements in the List<T> that starts at the specified index and contains the specified number of elements.
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
Parametri
- item
- T
Oggetto da individuare nella raccolta List<T>.The object to locate in the List<T>. Il valore può essere null
per i tipi di riferimento.The value can be null
for reference types.
- index
- Int32
Indice iniziale in base zero della ricerca.The zero-based starting index of the search. 0 (zero) è valido in un elenco vuoto.0 (zero) is valid in an empty list.
- count
- Int32
Numero di elementi nella sezione in cui eseguire la ricerca.The number of elements in the section to search.
Restituisce
Indice in base zero della prima occorrenza di item
all'interno dell'intervallo di elementi dell'oggetto List<T> che inizia da index
e contiene il numero di elementi corrispondente a count
, se presente; in caso contrario, -1.The zero-based index of the first occurrence of item
within the range of elements in the List<T> that starts at index
and contains count
number of elements, if found; otherwise, -1.
Eccezioni
index
non è compreso nell'intervallo di indici validi per List<T>.index
is outside the range of valid indexes for the List<T>.
-oppure--or-
count
è minore di 0.count
is less than 0.
-oppure--or-
index
e count
non specificano una sezione valida in List<T>.index
and count
do not specify a valid section in the List<T>.
Esempi
Nell'esempio seguente vengono illustrati tutti e tre gli overload del metodo IndexOf.The following example demonstrates all three overloads of the IndexOf method. Viene creata una List<T> di stringhe, con una voce che viene visualizzata due volte, nella posizione dell'indice 0 e nella posizione di indice 5.A List<T> of strings is created, with one entry that appears twice, at index location 0 and index location 5. L'overload del metodo IndexOf(T) esegue la ricerca nell'elenco dall'inizio e trova la prima occorrenza della stringa.The IndexOf(T) method overload searches the list from the beginning, and finds the first occurrence of the string. L'overload del metodo IndexOf(T, Int32) viene usato per eseguire una ricerca nell'elenco a partire dalla posizione di indice 3 e continuare fino alla fine dell'elenco e trova la seconda occorrenza della stringa.The IndexOf(T, Int32) method overload is used to search the list beginning with index location 3 and continuing to the end of the list, and finds the second occurrence of the string. Infine, viene utilizzato l'overload del metodo IndexOf(T, Int32, Int32) per eseguire la ricerca in un intervallo di due voci, a partire dalla posizione di indice due; Restituisce-1 perché non sono presenti istanze della stringa di ricerca in tale intervallo.Finally, the IndexOf(T, Int32, Int32) method overload is used to search a range of two entries, beginning at index location two; it returns -1 because there are no instances of the search string in that range.
using namespace System;
using namespace System::Collections::Generic;
void main()
{
List<String^>^ dinosaurs = gcnew 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();
for each(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
*/
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
Commenti
Il List<T> viene cercato in un secondo momento a partire da index
e termina in corrispondenza di index
più count
meno 1, se count
è maggiore di 0.The List<T> is searched forward starting at index
and ending at index
plus count
minus 1, if count
is greater than 0.
Questo metodo determina l'uguaglianza utilizzando l'operatore di confronto di uguaglianza predefinito EqualityComparer<T>.Default per T
, il tipo di valori nell'elenco.This method determines equality using the default equality comparer EqualityComparer<T>.Default for T
, the type of values in the list.
Questo metodo esegue una ricerca lineare; Pertanto, questo metodo è un'operazione O (n), dove n è count
.This method performs a linear search; therefore, this method is an O(n) operation, where n is count
.
Vedi anche
IndexOf(T)
Cerca l'oggetto specificato e restituisce l'indice in base zero della prima occorrenza nell'intera classe List<T>.Searches for the specified object and returns the zero-based index of the first occurrence within the entire 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
Parametri
- item
- T
Oggetto da individuare nella raccolta List<T>.The object to locate in the List<T>. Il valore può essere null
per i tipi di riferimento.The value can be null
for reference types.
Restituisce
Indice in base zero della prima occorrenza di item
all'interno dell'intero oggetto List<T>, se presente; in caso contrario, -1.The zero-based index of the first occurrence of item
within the entire List<T>, if found; otherwise, -1.
Implementazioni
Esempi
Nell'esempio seguente vengono illustrati tutti e tre gli overload del metodo IndexOf.The following example demonstrates all three overloads of the IndexOf method. Viene creata una List<T> di stringhe, con una voce che viene visualizzata due volte, nella posizione dell'indice 0 e nella posizione di indice 5.A List<T> of strings is created, with one entry that appears twice, at index location 0 and index location 5. L'overload del metodo IndexOf(T) esegue la ricerca nell'elenco dall'inizio e trova la prima occorrenza della stringa.The IndexOf(T) method overload searches the list from the beginning, and finds the first occurrence of the string. L'overload del metodo IndexOf(T, Int32) viene usato per eseguire una ricerca nell'elenco a partire dalla posizione di indice 3 e continuare fino alla fine dell'elenco e trova la seconda occorrenza della stringa.The IndexOf(T, Int32) method overload is used to search the list beginning with index location 3 and continuing to the end of the list, and finds the second occurrence of the string. Infine, viene utilizzato l'overload del metodo IndexOf(T, Int32, Int32) per eseguire la ricerca in un intervallo di due voci, a partire dalla posizione di indice due; Restituisce-1 perché non sono presenti istanze della stringa di ricerca in tale intervallo.Finally, the IndexOf(T, Int32, Int32) method overload is used to search a range of two entries, beginning at index location two; it returns -1 because there are no instances of the search string in that range.
using namespace System;
using namespace System::Collections::Generic;
void main()
{
List<String^>^ dinosaurs = gcnew 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();
for each(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
*/
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
Commenti
Viene eseguita una ricerca in un oggetto List<T> a partire dal primo elemento e termina in corrispondenza dell'ultimo elemento.The List<T> is searched forward starting at the first element and ending at the last element.
Questo metodo determina l'uguaglianza utilizzando l'operatore di confronto di uguaglianza predefinito EqualityComparer<T>.Default per T
, il tipo di valori nell'elenco.This method determines equality using the default equality comparer EqualityComparer<T>.Default for T
, the type of values in the list.
Questo metodo esegue una ricerca lineare; Pertanto, questo metodo è un'operazione O (n), dove n è Count.This method performs a linear search; therefore, this method is an O(n) operation, where n is Count.