Giới thiệu
Phương thức tĩnh Array.LastIndexOf<T>(T[] array, T value) trả về chỉ số 0-based của lần xuất hiện cuối cùng của value trong mảng. Trả về -1 nếu không tìm thấy.
Ví dụ cơ bản
int[] val = { 97, 45, 76, 21, 89, 45 };
int res = Array.LastIndexOf(val, 45); // 5
Ví dụ hoàn chỉnh
using System;
public class Demo
{
public static void Main()
{
int[] val = { 97, 45, 76, 21, 89, 45 };
int res = Array.LastIndexOf(val, 45);
Console.WriteLine("Index of element 45 is = " + res);
}
}
Kết quả
Index of element 45 is = 5
Các nạp chồng LastIndexOf
LastIndexOf(Array, object)- mảng 1 chiều, object.LastIndexOf(Array, object, int startIndex)- tìm ngược từ startIndex về 0.LastIndexOf(Array, object, int startIndex, int count)- tìm trong đoạn [startIndex-count+1, startIndex].- Generic
LastIndexOf<T>(T[], T, ...)- type-safe.
So sánh IndexOf vs LastIndexOf
| Phương thức | Tìm | Trả về (ví dụ trên) |
|---|---|---|
IndexOf | Đầu tiên | 1 |
LastIndexOf | Cuối cùng | 5 |
Lưu ý
- So sánh dùng
EqualityComparer<T>.Default. - Phức tạp O(n) - duyệt ngược từ cuối.
- Với mảng 2 chiều, ném
RankException(chỉ hỗ trợ 1 chiều).