List<T>.LastIndexOf Метод

Определение

Возвращает отсчитываемый от нуля индекс последнего вхождения значения в списке List<T> или в его части.

Перегрузки

LastIndexOf(T)

Осуществляет поиск указанного объекта и возвращает отсчитываемый от нуля индекс последнего вхождения, найденного в пределах всего списка List<T>.

LastIndexOf(T, Int32)

Осуществляет поиск указанного объекта и возвращает отсчитываемый от нуля индекс последнего вхождения в диапазоне элементов списка List<T>, начиная с первого элемента и до позиции с заданным индексом.

LastIndexOf(T, Int32, Int32)

Выполняет поиск указанного объекта и возвращает отсчитываемый от нуля индекс последнего вхождения в диапазоне элементов списка List<T>, содержащем указанное число элементов и заканчивающемся в позиции с указанным индексом.

Примеры

В следующем примере показаны все три перегрузки LastIndexOf метода. Создается строка List<T> с одной записью, которая отображается дважды в расположении индекса 0 и расположении индекса 5. Перегрузка LastIndexOf(T) метода выполняет поиск всего списка с конца и находит второе вхождение строки. Перегрузка LastIndexOf(T, Int32) метода используется для поиска списка назад, начиная с расположения индекса 3 и продолжающегося до начала списка, поэтому он находит первое вхождение строки в списке. Наконец, перегрузка LastIndexOf(T, Int32, Int32) метода используется для поиска диапазона из четырех записей, начиная с расположения индекса 4 и расширения назад (то есть выполняется поиск элементов в расположениях 4, 3, 2 и 1). Этот поиск возвращает значение -1, так как в этом диапазоне нет экземпляров строки поиска.

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("\nLastIndexOf(\"Tyrannosaurus\"): {0}", 
        dinosaurs->LastIndexOf("Tyrannosaurus"));

    Console::WriteLine("\nLastIndexOf(\"Tyrannosaurus\", 3): {0}", 
        dinosaurs->LastIndexOf("Tyrannosaurus", 3));

    Console::WriteLine("\nLastIndexOf(\"Tyrannosaurus\", 4, 4): {0}", 
        dinosaurs->LastIndexOf("Tyrannosaurus", 4, 4));
}

/* This code example produces the following output:

Tyrannosaurus
Amargasaurus
Mamenchisaurus
Brachiosaurus
Deinonychus
Tyrannosaurus
Compsognathus

LastIndexOf("Tyrannosaurus"): 5

LastIndexOf("Tyrannosaurus", 3): 0

LastIndexOf("Tyrannosaurus", 4, 4): -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("\nLastIndexOf(\"Tyrannosaurus\"): {0}",
            dinosaurs.LastIndexOf("Tyrannosaurus"));

        Console.WriteLine("\nLastIndexOf(\"Tyrannosaurus\", 3): {0}",
            dinosaurs.LastIndexOf("Tyrannosaurus", 3));

        Console.WriteLine("\nLastIndexOf(\"Tyrannosaurus\", 4, 4): {0}",
            dinosaurs.LastIndexOf("Tyrannosaurus", 4, 4));
    }
}

/* This code example produces the following output:

Tyrannosaurus
Amargasaurus
Mamenchisaurus
Brachiosaurus
Deinonychus
Tyrannosaurus
Compsognathus

LastIndexOf("Tyrannosaurus"): 5

LastIndexOf("Tyrannosaurus", 3): 0

LastIndexOf("Tyrannosaurus", 4, 4): -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 & _
            "LastIndexOf(""Tyrannosaurus""): {0}", _
            dinosaurs.LastIndexOf("Tyrannosaurus"))

        Console.WriteLine(vbLf & _
            "LastIndexOf(""Tyrannosaurus"", 3): {0}", _
            dinosaurs.LastIndexOf("Tyrannosaurus", 3))

        Console.WriteLine(vbLf & _
            "LastIndexOf(""Tyrannosaurus"", 4, 4): {0}", _
            dinosaurs.LastIndexOf("Tyrannosaurus", 4, 4))

    End Sub
End Class

' This code example produces the following output:
'
'Tyrannosaurus
'Amargasaurus
'Mamenchisaurus
'Brachiosaurus
'Deinonychus
'Tyrannosaurus
'Compsognathus
'
'LastIndexOf("Tyrannosaurus"): 5
'
'LastIndexOf("Tyrannosaurus", 3): 0
'
'LastIndexOf("Tyrannosaurus", 4, 4): -1

LastIndexOf(T)

Осуществляет поиск указанного объекта и возвращает отсчитываемый от нуля индекс последнего вхождения, найденного в пределах всего списка List<T>.

public:
 int LastIndexOf(T item);
public int LastIndexOf (T item);
member this.LastIndexOf : 'T -> int
Public Function LastIndexOf (item As T) As Integer

Параметры

item
T

Объект для поиска в List<T>. Для ссылочных типов допускается значение null.

Возвращаемое значение

Int32

Отсчитываемый от нуля индекс последнего вхождения item в пределах всего списка List<T>, если элемент найден; в противном случае значение –1.

Комментарии

Выполняется List<T> поиск назад, начиная с последнего элемента и заканчивающийся первым элементом.

Этот метод определяет равенство с помощью средства EqualityComparer<T>.Default сравнения равенства по умолчанию для Tтипа значений в списке.

Этот метод выполняет линейный поиск; таким образом, этот метод является операцией O(n), где nCount.

См. также раздел

Применяется к

LastIndexOf(T, Int32)

Осуществляет поиск указанного объекта и возвращает отсчитываемый от нуля индекс последнего вхождения в диапазоне элементов списка List<T>, начиная с первого элемента и до позиции с заданным индексом.

public:
 int LastIndexOf(T item, int index);
public int LastIndexOf (T item, int index);
member this.LastIndexOf : 'T * int -> int
Public Function LastIndexOf (item As T, index As Integer) As Integer

Параметры

item
T

Объект для поиска в List<T>. Для ссылочных типов допускается значение null.

index
Int32

Индекс (с нуля) начала диапазона поиска в обратном направлении.

Возвращаемое значение

Int32

Отсчитываемый от нуля индекс последнего вхождения элемента item в диапазоне элементов списка List<T>, начиная с первого элемента и до позиции index, если элемент найден; в противном случае значение -1.

Исключения

index находится вне диапазона допустимых индексов для List<T>.

Комментарии

Выполняется List<T> поиск назад, начиная с index первого элемента и заканчивающийся на первый элемент.

Этот метод определяет равенство с помощью средства EqualityComparer<T>.Default сравнения равенства по умолчанию для Tтипа значений в списке.

Этот метод выполняет линейный поиск; таким образом, этот метод является операцией O(n), где n — количество элементов с начала List<T> до index.

См. также раздел

Применяется к

LastIndexOf(T, Int32, Int32)

Выполняет поиск указанного объекта и возвращает отсчитываемый от нуля индекс последнего вхождения в диапазоне элементов списка List<T>, содержащем указанное число элементов и заканчивающемся в позиции с указанным индексом.

public:
 int LastIndexOf(T item, int index, int count);
public int LastIndexOf (T item, int index, int count);
member this.LastIndexOf : 'T * int * int -> int
Public Function LastIndexOf (item As T, index As Integer, count As Integer) As Integer

Параметры

item
T

Объект для поиска в List<T>. Для ссылочных типов допускается значение null.

index
Int32

Индекс (с нуля) начала диапазона поиска в обратном направлении.

count
Int32

Число элементов в диапазоне, в котором выполняется поиск.

Возвращаемое значение

Int32

Отсчитываемый от нуля индекс последнего вхождения item в диапазоне элементов списка List<T>, состоящем из count элементов и заканчивающемся в позиции index, если элемент найден. В противном случае значение –1.

Исключения

index находится вне диапазона допустимых индексов для List<T>.

-или- Значение параметраcount меньше 0.

-или- index и count не указывают допустимый раздел в List<T>.

Комментарии

Выполняется List<T> поиск назад, начиная index с index минуса count плюс 1, если count значение больше 0.

Этот метод определяет равенство с помощью средства EqualityComparer<T>.Default сравнения равенства по умолчанию для Tтипа значений в списке.

Этот метод выполняет линейный поиск; таким образом, этот метод является операцией O(n), где ncount.

См. также раздел

Применяется к