List<T>.IndexOf Metodo

Definizione

Restituisce l'indice in base zero della prima occorrenza di un valore in List<T> o in una parte di esso.

Overload

Nome Descrizione
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 si estende dall'indice specificato all'ultimo elemento.

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 specificato di elementi.

IndexOf(T)

Cerca l'oggetto specificato e restituisce l'indice in base zero della prima occorrenza all'interno dell'intero List<T>oggetto .

Esempio

Nell'esempio seguente vengono illustrati tutti e tre gli overload del IndexOf metodo . Viene creato un List<T> di stringhe, con una voce che viene visualizzata due volte, in corrispondenza della posizione di indice 0 e della posizione dell'indice 5. L'overload del IndexOf(T) metodo cerca nell'elenco dall'inizio e trova la prima occorrenza della stringa. L'overload IndexOf(T, Int32) del metodo viene usato per cercare l'elenco a partire dalla posizione di indice 3 e continuare fino alla fine dell'elenco e trova la seconda occorrenza della stringa. Infine, l'overload del IndexOf(T, Int32, Int32) metodo viene usato per eseguire ricerche in un intervallo di due voci, a partire dalla posizione dell'indice due. Restituisce -1 perché non sono presenti istanze della stringa di ricerca in tale intervallo.

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)

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 si estende dall'indice specificato all'ultimo elemento.

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 nell'oggetto List<T>. Il valore può essere null per i tipi di riferimento.

index
Int32

Indice iniziale in base zero della ricerca. 0 (zero) è valido in un elenco vuoto.

Valori restituiti

Indice in base zero della prima occorrenza di all'interno dell'intervallo item di elementi nell'oggetto List<T> che si estende dall'ultimo index elemento, se trovato; in caso contrario, -1.

Eccezioni

indexnon è compreso nell'intervallo di indici validi per .List<T>

Commenti

L'oggetto List<T> viene cercato in avanti a partire da index e termina con l'ultimo elemento.

Questo metodo determina l'uguaglianza usando l'operatore di confronto EqualityComparer<T>.Default di uguaglianza predefinito per T, il tipo di valori nell'elenco.

Questo metodo esegue una ricerca lineare; pertanto, questo metodo è un'operazione O(n), dove n è il numero di elementi da index alla fine di List<T>.

Vedi anche

Si applica a

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 specificato di elementi.

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 nell'oggetto List<T>. Il valore può essere null per i tipi di riferimento.

index
Int32

Indice iniziale in base zero della ricerca. 0 (zero) è valido in un elenco vuoto.

count
Int32

Numero di elementi nella sezione da cercare.

Valori restituiti

Indice in base zero della prima occorrenza di item all'interno dell'intervallo di elementi nell'oggetto List<T> che inizia da index e contiene count il numero di elementi, se trovato; in caso contrario, -1.

Eccezioni

indexnon è compreso nell'intervallo di indici validi per .List<T>

oppure

count è minore di 0.

oppure

index e count non specificano una sezione valida in List<T>.

Commenti

L'oggetto List<T> viene cercato in avanti a partire da index e termina con index più count meno 1, se count è maggiore di 0.

Questo metodo determina l'uguaglianza usando l'operatore di confronto EqualityComparer<T>.Default di uguaglianza predefinito per T, il tipo di valori nell'elenco.

Questo metodo esegue una ricerca lineare; pertanto, questo metodo è un'operazione O(n), dove n è count.

Vedi anche

Si applica a

IndexOf(T)

Cerca l'oggetto specificato e restituisce l'indice in base zero della prima occorrenza all'interno dell'intero List<T>oggetto .

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 nell'oggetto List<T>. Il valore può essere null per i tipi di riferimento.

Valori restituiti

Indice in base zero della prima occorrenza di all'interno dell'intero itemList<T>oggetto , se trovato; in caso contrario, -1.

Implementazioni

Commenti

L'oggetto List<T> viene cercato in avanti a partire dal primo elemento e termina con l'ultimo elemento.

Questo metodo determina l'uguaglianza usando l'operatore di confronto EqualityComparer<T>.Default di uguaglianza predefinito per T, il tipo di valori nell'elenco.

Questo metodo esegue una ricerca lineare; pertanto, questo metodo è un'operazione O(n), dove n è Count.

Vedi anche

Si applica a