Поделиться через


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.cs
Исходный код:
List.cs
Исходный код:
List.cs

Осуществляет поиск указанного объекта и возвращает отсчитываемый от нуля индекс последнего вхождения, найденного в пределах всего списка 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.

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

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

Комментарии

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

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

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

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

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

LastIndexOf(T, Int32)

Исходный код:
List.cs
Исходный код:
List.cs
Исходный код:
List.cs

Осуществляет поиск указанного объекта и возвращает отсчитываемый от нуля индекс последнего вхождения в диапазоне элементов списка 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

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

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

Отсчитываемый от нуля индекс последнего вхождения элемента 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.cs
Исходный код:
List.cs
Исходный код:
List.cs

Выполняет поиск указанного объекта и возвращает отсчитываемый от нуля индекс последнего вхождения в диапазоне элементов списка 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

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

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

Отсчитываемый от нуля индекс последнего вхождения 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), где n — .count

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

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