Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C#

C# में Array.LastIndexOf() मेथड - अंतिम घटना का सूचकांक खोजें

C# में Array.LastIndexOf() मेथड निर्दिष्ट ऑब्जेक्ट को खोजता है और संपूर्ण सरणी में उसकी अंतिम घटना का सूचकांक लौटाता है।

सिंटैक्स

public static int LastIndexOf<T> (T[] array, T val);
  • array: खोजी जाने वाली एक-आयामी, शून्य-आधारित सरणी
  • val: सरणी में स्थित करने के लिए ऑब्जेक्ट

उदाहरण

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

अधिक उदाहरण और ओवरलोड्स

1. डुप्लिकेट तत्वों के साथ

string[] fruits = { "apple", "banana", "apple", "cherry", "apple" };

int lastApple = Array.LastIndexOf(fruits, "apple");
Console.WriteLine("अंतिम 'apple' सूचकांक: " + lastApple); // 4

int lastBanana = Array.LastIndexOf(fruits, "banana");
Console.WriteLine("अंतिम 'banana' सूचकांक: " + lastBanana); // 1

int notFound = Array.LastIndexOf(fruits, "mango");
Console.WriteLine("'mango' सूचकांक: " + notFound); // -1

2. प्रारंभ सूचकांक निर्दिष्ट करना (LastIndexOf ओवरलोड)

string[] arr = { "a", "b", "c", "b", "a", "b" };

// पूरे सरणी में अंतिम 'b'
Console.WriteLine(Array.LastIndexOf(arr, "b"));           // 5

// सूचकांक 3 से पीछे की ओर खोजें
Console.WriteLine(Array.LastIndexOf(arr, "b", 3));        // 3

// सूचकांक 3 से 3 तत्व पीछे की ओर खोजें (सूचकांक 3, 2, 1)
Console.WriteLine(Array.LastIndexOf(arr, "b", 3, 3));     // 1

3. केस-इनसेंसिटिव खोज (कस्टम तुलनाकर्ता)

string[] arr = { "Apple", "BANANA", "apple", "Cherry" };

// डिफ़ॉल्ट केस-सेंसिटिव
Console.WriteLine(Array.LastIndexOf(arr, "apple")); // 2

// केस-इनसेंसिटिव के लिए कस्टम लॉजिक
int lastIndex = -1;
for (int i = arr.Length - 1; i >= 0; i--)
{
    if (string.Equals(arr[i], "APPLE", StringComparison.OrdinalIgnoreCase))
    {
        lastIndex = i;
        break;
    }
}
Console.WriteLine("केस-इनसेंसिटिव अंतिम सूचकांक: " + lastIndex); // 2

वापसी मान

  • ≥ 0: तत्व मिला, सूचकांक लौटाता है
  • -1: तत्व नहीं मिला

मुख्य बिंदु

  • पीछे से आगे खोजता है (अंतिम सूचकांक से 0 की ओर)
  • डिफ़ॉल्ट रूप से केस-सेंसिटिव तुलना (स्ट्रिंग्स के लिए)
  • null तत्वों को खोज सकता है
  • null सरणी के लिए ArgumentNullException फेंकता है
  • सरणी की रैंक 1 से अधिक होने पर RankException फेंकता है
  • समानता जांच के लिए EqualityComparer<T>.Default का उपयोग करता है

संबंधित मेथड्स

  • Array.IndexOf() - पहली घटना का सूचकांक
  • Array.FindLastIndex() - प्रीडिकेट के आधार पर अंतिम सूचकांक
  • Array.BinarySearch() - क्रमबद्ध सरणी में तेज खोज
  1. JavaScript Array.includes(): एरे में तत्व खोजें JavaScript Array.includes(): एरे में तत्व खोजें

    Array.includes() मेथड जांचता है कि कोई एरे दिए गए तत्व को शामिल करता है या नहीं, और true या false लौटाता है। यह indexOf() !== -1 से अधिक पठनीय है। उदाहरण { fillEle.innerHTML = शेर एरे में मौजूद है: + arr.includes(शेर); }); </script> </body> </html> आउटपुट क्लिक क

  1. JavaScript Array.keys(): एरे कीज (इंडेक्स) प्राप्त करें JavaScript Array.keys(): एरे कीज (इंडेक्स) प्राप्त करें

    Array.prototype.keys() मेथड एक नया एरे इटरेटर ऑब्जेक्ट लौटाता है जिसमें मूल एरे के प्रत्येक इंडेक्स के लिए कीज (0, 1, 2...) होती हैं। यह मानों के बजाय इंडेक्स पर पुनरावृत्ति के लिए उपयोगी है। उदाहरण { fillEle.innerHTML = ; for (let x of keysIter) { fillEle.innerHTML

  1. JavaScript Array.from(): एरे-लाइक से एरे बनाएं JavaScript Array.from(): एरे-लाइक से एरे बनाएं

    Array.from() एक स्थिर मेथड है जो एरे-लाइक या इटरेटर ऑब्जेक्ट्स से एक नया, शैलो-कॉपीड एरे इंस्टेंस बनाता है। यह arguments, NodeList, Set, Map, स्ट्रिंग्स, आदि को एरे में बदलने का मानक तरीका है। उदाहरण { const arr = Array.from(str); fillEle.innerHTML = एरे: + arr.join(, ); })