List<T>.IndexOf List<T>.IndexOf List<T>.IndexOf List<T>.IndexOf Method

Definição

Retorna o índice baseado em zero da primeira ocorrência de um valor no List<T> ou em uma parte dele.Returns the zero-based index of the first occurrence of a value in the List<T> or in a portion of it.

Sobrecargas

IndexOf(T, Int32) IndexOf(T, Int32) IndexOf(T, Int32) IndexOf(T, Int32)

Procura o objeto especificado e retorna o índice baseado em zero da primeira ocorrência dentro do intervalo de elementos em List<T> que se estende do índice especificado para o último 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) IndexOf(T, Int32, Int32) IndexOf(T, Int32, Int32) IndexOf(T, Int32, Int32)

Pesquisa o objeto especificado e retorna o índice baseado em zero da primeira ocorrência em um intervalo de elementos no List<T> que começa no índice especificado e contém o número de elementos especificado.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) IndexOf(T) IndexOf(T) IndexOf(T)

Pesquisa o objeto especificado e retorna o índice baseado em zero da primeira ocorrência dentro de todo o 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) IndexOf(T, Int32) IndexOf(T, Int32) IndexOf(T, Int32)

Procura o objeto especificado e retorna o índice baseado em zero da primeira ocorrência dentro do intervalo de elementos em List<T> que se estende do índice especificado para o último 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

Parâmetros

item
T T T T

O objeto a ser localizado no List<T>.The object to locate in the List<T>. O valor pode ser null para tipos de referência.The value can be null for reference types.

index
Int32 Int32 Int32 Int32

O índice inicial com base em zero da pesquisa.The zero-based starting index of the search. 0 (zero) é válido em uma lista vazia.0 (zero) is valid in an empty list.

Retornos

O índice baseado em zero da primeira ocorrência de item dentro do intervalo de elementos no List<T> que se estende do index ao último elemento, se for encontrado; caso contrário, -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.

Exceções

index está fora do intervalo de índices válidos para o List<T>.index is outside the range of valid indexes for the List<T>.

Exemplos

O exemplo a seguir demonstra todas as três sobrecargas IndexOf do método.The following example demonstrates all three overloads of the IndexOf method. Uma List<T> das cadeias de caracteres é criada, com uma entrada que aparece duas vezes, no local do índice 0 e no local do índice 5.A List<T> of strings is created, with one entry that appears twice, at index location 0 and index location 5. A IndexOf(T) sobrecarga do método pesquisa a lista desde o início e localiza a primeira ocorrência da cadeia de caracteres.The IndexOf(T) method overload searches the list from the beginning, and finds the first occurrence of the string. A IndexOf(T, Int32) sobrecarga do método é usada para pesquisar a lista que começa com o local do índice 3 e continuando até o final da lista e encontra a segunda ocorrência da cadeia de caracteres.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. Por fim, IndexOf(T, Int32, Int32) a sobrecarga do método é usada para pesquisar um intervalo de duas entradas, começando no local do índice dois; ele retorna-1 porque não há instâncias da cadeia de caracteres de pesquisa nesse intervalo.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
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

Comentários

O List<T> é pesquisado em index direção inicial e terminando no último elemento.The List<T> is searched forward starting at index and ending at the last element.

Esse método determina a igualdade usando o EqualityComparer<T>.Default comparador de igualdade padrão para T, o tipo de valores na lista.This method determines equality using the default equality comparer EqualityComparer<T>.Default for T, the type of values in the list.

Esse método executa uma pesquisa linear; Portanto, esse método é uma operação o (n), em que n é o número de elementos index de até o final do 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>.

Veja também

IndexOf(T, Int32, Int32) IndexOf(T, Int32, Int32) IndexOf(T, Int32, Int32) IndexOf(T, Int32, Int32)

Pesquisa o objeto especificado e retorna o índice baseado em zero da primeira ocorrência em um intervalo de elementos no List<T> que começa no índice especificado e contém o número de elementos especificado.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

Parâmetros

item
T T T T

O objeto a ser localizado no List<T>.The object to locate in the List<T>. O valor pode ser null para tipos de referência.The value can be null for reference types.

index
Int32 Int32 Int32 Int32

O índice inicial com base em zero da pesquisa.The zero-based starting index of the search. 0 (zero) é válido em uma lista vazia.0 (zero) is valid in an empty list.

count
Int32 Int32 Int32 Int32

O número de elementos na seção a ser pesquisada.The number of elements in the section to search.

Retornos

O índice baseado em zero da primeira ocorrência de item dentro do intervalo de elementos no List<T> que começa em index e contém o número de elementos count, se encontrado; caso contrário, -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.

Exceções

index está fora do intervalo de índices válidos para o List<T>.index is outside the range of valid indexes for the List<T>.

- ou --or- count é menor que 0.count is less than 0.

- ou --or- index e count não especificam uma seção válida no List<T>.index and count do not specify a valid section in the List<T>.

Exemplos

O exemplo a seguir demonstra todas as três sobrecargas IndexOf do método.The following example demonstrates all three overloads of the IndexOf method. Uma List<T> das cadeias de caracteres é criada, com uma entrada que aparece duas vezes, no local do índice 0 e no local do índice 5.A List<T> of strings is created, with one entry that appears twice, at index location 0 and index location 5. A IndexOf(T) sobrecarga do método pesquisa a lista desde o início e localiza a primeira ocorrência da cadeia de caracteres.The IndexOf(T) method overload searches the list from the beginning, and finds the first occurrence of the string. A IndexOf(T, Int32) sobrecarga do método é usada para pesquisar a lista que começa com o local do índice 3 e continuando até o final da lista e encontra a segunda ocorrência da cadeia de caracteres.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. Por fim, IndexOf(T, Int32, Int32) a sobrecarga do método é usada para pesquisar um intervalo de duas entradas, começando no local do índice dois; ele retorna-1 porque não há instâncias da cadeia de caracteres de pesquisa nesse intervalo.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
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

Comentários

O List<T> é pesquisado a partir index de e terminando count em index mais de 1 count , se for maior que 0.The List<T> is searched forward starting at index and ending at index plus count minus 1, if count is greater than 0.

Esse método determina a igualdade usando o EqualityComparer<T>.Default comparador de igualdade padrão para T, o tipo de valores na lista.This method determines equality using the default equality comparer EqualityComparer<T>.Default for T, the type of values in the list.

Esse método executa uma pesquisa linear; Portanto, esse método é uma operação O (n), onde n é count.This method performs a linear search; therefore, this method is an O(n) operation, where n is count.

Veja também

IndexOf(T) IndexOf(T) IndexOf(T) IndexOf(T)

Pesquisa o objeto especificado e retorna o índice baseado em zero da primeira ocorrência dentro de todo o 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

Parâmetros

item
T T T T

O objeto a ser localizado no List<T>.The object to locate in the List<T>. O valor pode ser null para tipos de referência.The value can be null for reference types.

Retornos

O índice baseado em zero da primeira ocorrência de item em todo o List<T>, se encontrado; caso contrário, -1.The zero-based index of the first occurrence of item within the entire List<T>, if found; otherwise, -1.

Implementações

Exemplos

O exemplo a seguir demonstra todas as três sobrecargas IndexOf do método.The following example demonstrates all three overloads of the IndexOf method. Uma List<T> das cadeias de caracteres é criada, com uma entrada que aparece duas vezes, no local do índice 0 e no local do índice 5.A List<T> of strings is created, with one entry that appears twice, at index location 0 and index location 5. A IndexOf(T) sobrecarga do método pesquisa a lista desde o início e localiza a primeira ocorrência da cadeia de caracteres.The IndexOf(T) method overload searches the list from the beginning, and finds the first occurrence of the string. A IndexOf(T, Int32) sobrecarga do método é usada para pesquisar a lista que começa com o local do índice 3 e continuando até o final da lista e encontra a segunda ocorrência da cadeia de caracteres.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. Por fim, IndexOf(T, Int32, Int32) a sobrecarga do método é usada para pesquisar um intervalo de duas entradas, começando no local do índice dois; ele retorna-1 porque não há instâncias da cadeia de caracteres de pesquisa nesse intervalo.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
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

Comentários

O List<T> é pesquisado em frente, começando no primeiro elemento e terminando no último elemento.The List<T> is searched forward starting at the first element and ending at the last element.

Esse método determina a igualdade usando o EqualityComparer<T>.Default comparador de igualdade padrão para T, o tipo de valores na lista.This method determines equality using the default equality comparer EqualityComparer<T>.Default for T, the type of values in the list.

Esse método executa uma pesquisa linear; Portanto, esse método é uma operação O (n), onde n é Count.This method performs a linear search; therefore, this method is an O(n) operation, where n is Count.

Veja também

Aplica-se a