C#-এ Array.LastIndexOf() মেথডটি একটি এক-মাত্রিক অ্যারেতে নির্দিষ্ট অবজেক্টের শেষ erneurrence (last occurrence)-এর ইন্ডেক্স ফেরত দেয়। না পাওয়া গেলে -১ ফেরত দেয়।
সিনট্যাক্স (Syntax)
public static int LastIndexOf(T[] array, T value);
প্যারামিটার:
array- সার্চ করার এক-মাত্রিক, জিরো-বেইসড অ্যারেvalue- খুঁজতে চাওয়া অবজেক্ট
উদাহরণ: স্ট্রিং অ্যারেতে 'bus' খুঁজে বের করা
using System;
public class Demo
{
public static void Main()
{
Console.WriteLine("Array elements...");
string[] arr = { "car", "bike", "truck", "bus" };
for (int i = 0; i < arr.Length; i++)
{
Console.Write("{0} ", arr[i]);
}
Console.WriteLine();
int lastIndex = Array.LastIndexOf(arr, "bus");
Console.WriteLine("Last Occurrence of element bus is at index = " + lastIndex);
}
}
আউটপুট
Array elements... car bike truck bus Last Occurrence of element bus is at index = 3
ওভারলোডস (Overloads)
Array.LastIndexOf-এর তিনটি ওভারলোড রয়েছে:
| সিনট্যাক্স | বর্ণনা |
|---|---|
LastIndexOf(Array, Object) | পুরো অ্যারে সার্চ (নন-जেনেরিক) |
LastIndexOf(Array, Object, Int32) | নির্দিষ্ট ইন্ডেক্স থেকে শুরু করে पीछे की तरफ সার্চ |
LastIndexOf(Array, Object, Int32, Int32) | নির্দিষ্ট রেঞ্জে (startIndex, count) সার্চ |
LastIndexOf<T>(T[], T) | জেনেরিক ভার্সন (টাইপ-সেফ) |
LastIndexOf<T>(T[], T, Int32) | জেনেরিক + startIndex |
LastIndexOf<T>(T[], T, Int32, Int32) | জেনেরিক + startIndex + count |
উদাহরণ: রেঞ্জ-স্পেসিফিক সার্চ
using System;
public class Demo
{
public static void Main()
{
string[] arr = { "a", "b", "c", "b", "a", "b", "c" };
// índices: 0 1 2 3 4 5 6
// পুরো অ্যারে
Console.WriteLine("Full array: " + Array.LastIndexOf(arr, "b")); // 5
// ইন্ডেক্স ৪ থেকে শুরু (পেছনের দিকে)
Console.WriteLine("From index 4: " + Array.LastIndexOf(arr, "b", 4)); // 3
// ইন্ডেক্স ২ থেকে ৩টি উপাদান (ইন্ডেক্স ২, ১, ০)
Console.WriteLine("Range 2,3: " + Array.LastIndexOf(arr, "b", 2, 3)); // 1
}
}
আউটপুট
Full array: 5 From index 4: 3 Range 2,3: 1
IndexOf() vs LastIndexOf()
| মেথড | সার্চ দিক | ফেরত দেয় |
|---|---|---|
IndexOf | সামনে থেকে (0 → n) | প্রথম occurrence |
LastIndexOf | পেছন থেকে (n-1 → 0) | শেষ occurrence |
দুইটোই ব্যবহার উদাহরণ
string[] items = { "a", "b", "c", "b", "a" };
int firstB = Array.IndexOf(items, "b"); // 1
int lastB = Array.LastIndexOf(items, "b"); // 3
int countB = lastB - firstB + 1; // 3 (যদি শুধু 'b' থাকে)
নোট: রেফারেন্স টাইপের জন্য ডিফল্ট সমানতা (reference equality) ব্যবহার হয়। ভ্যালু টাইপ বা স্ট্রিং-এ ভ্যালু সমানতা কাজ করে।