CodeBlanks Logo Icon CodeBlanks

Array.IndexOf

C# kursu · Başlangıç · Ders 61/116

Array.IndexOf ile bir elemanın dizinini bulmayı öğrenirsin.

Array.IndexOf

Array.IndexOf bir dizide eleman arar ve bulduğu ilk dizini döndürür. Aranan eleman yoksa -1 döner. Arama dizinin başından sonuna doğrudur.

Örneğin int[] nums = { 10, 20, 30 }; dizisinde Array.IndexOf(nums, 20) çağrısı 1 döner çünkü 20 değeri ikinci konumdadır (indeksler 0'dan başlar).

Eşitlik ve LastIndexOf

Array.IndexOf aramaya baştan başlar; aynı elemandan birden fazla varsa ilk bulduğunu döndürür. Aramayı sondan başlatmak için Array.LastIndexOf kullanılır. İkisi de eşitlik karşılaştırması yapar; yalnızca yönleri farklıdır.

Karşılaştırma == operatörü ile yapılır; yani eleman türe göre eşit olmalıdır. Büyük/küçük harf duyarlılığı metinlerde geçerlidir: Array.IndexOf(names, "ayşe") ile "Ayşe" aranmaz.

Uygulama Şehir dizisinde ara

Verilen string[] cities = { "İzmir", "Ankara", "Bursa" }; dizisinde Array.IndexOf(cities, "Ankara") ile "Ankara" şehrinin dizinini bul ve Console.WriteLine ile yazdır.

Örnek çözümü göster
int idx = Array.IndexOf(cities, "Ankara"); ile dizini bul, sonra Console.WriteLine(idx); ile yazdır.
Örnek çözüm:
using System;

class Program
{
    static void Main()
    {
        string[] cities = { "İzmir", "Ankara", "Bursa" };
        // Ankara'nın dizinini bul ve yazdır
        int idx = Array.IndexOf(cities, "Ankara");
        Console.WriteLine(idx);
    }
}

Kendini test et

  1. İfadeyi anlamına eşle

    Array.IndexOf(nums, 5)
    5'in dizini
    -1
    Bulunamadı
    nums[0]
    İlk eleman
    Array.Sort(nums)
    Sıralar
  2. IndexOf çağrısı

    int[] nums = { 10, 20, 30 };
    int idx = ____;
    Console.WriteLine(idx);
    Cevabı göster
    int[] nums = { 10, 20, 30 };
    int idx = Array.IndexOf(nums, 20);
    Console.WriteLine(idx);
  3. Olmayan eleman için IndexOf çıktısı nedir?

    int[] nums = { 10, 20, 30 };
    Console.WriteLine(Array.IndexOf(nums, 25));
    • 0
    • -1
    • 25
    • 3
    Cevabı göster

    -1 — Doğru. 25 dizide olmadığı için IndexOf -1 döner.

Başlangıç bölümündeki tüm dersler