C# Dizi Eleman Arama
C# programlama dilinde dizi (array) içinde istenilen koşula göre bir veya daha fazla elemanı bulmak için Array sınıfının Find() ve FindAll() yöntemleri kullanılır.
"Find()" yöntemi, aranılan koşula göre dizi içinde karşılaşılan ilk elemanı getirirken, "FindAll()" yöntemi, aranılan koşulu sağlayan tüm elemanları getirir.
Not : Arama kriterleri varsayılan olarak büyük ve küçük harf duyarlıdır.
Aşağıdaki örneği inceleyelim..
string[] dizi = { "Adana", "Antalya", "Ankara", "Bursa", "İzmir",
"Konya", "Kayseri", "İstanbul", "Eskişehir", "Mersin", "Erzurum" };
//Find Örnekleri
var sonuc1 = Array.Find(dizi, ele => ele.Contains("er"));
var sonuc2 = Array.Find(dizi, ele => ele.StartsWith("A"));
var sonuc3 = Array.Find(dizi, ele => ele.EndsWith("r"));
var sonuc4 = Array.Find(dizi, ele => ele.Length >= 7);
var sonuc5 = Array.Find(dizi, ele => ele == "Bursa");
var sonuc6 = Array.Find(dizi, ele => ele == "Bursa" || ele == "Kayseri");
//FindAll Örnekleri
var resul7 = Array.FindAll(dizi, ele => ele.Contains("er"));
var resul8 = Array.FindAll(dizi, ele => ele.StartsWith("A"));
var sonuc9 = Array.FindAll(dizi, ele => ele.EndsWith("r"));
var resul10 = Array.FindAll(dizi, ele => ele.Length >= 7);
var resul11 = Array.FindAll(dizi, ele => ele == "Bursa");
var resul12 = Array.FindAll(dizi, ele => ele == "Bursa" || ele == "Kayseri");
Console.ReadLine();
Dizimizdeki elemanları hem "Find()" hem de "FindAll()" yöntemlerini kullanarak aradık. Aşağıdaki sonuçlara bakalım..
sonuc1 : Dizi içinde "er" metni geçen ilk elemanı getirir. Bu da "Kayseri" olacaktır.
sonuc2 : Dizi içinde "A" ile başlayan ilk elemanı getirir. Bu da "Adana" olacaktır.
sonuc3 : Dizi içinde "r" ile biten ilk elemanı getirir. Bu da "İzmir" olacaktır.
sonuc4 : Dizi içinde 7 ve daha fazla karaktere sahip ilk elemanı getirir. Bu da "Antalya" olacaktır.
sonuc5 : Dizi içindeki ilk "Bursa" metnine sahip elemanı getirecektir.
sonuc6 : Dizi içindeki "Bursa" veya "Kayseri" metnine sahip ilk elemanı getirecektir. Sonuç, ilki "Bursa" olduğu için "Bursa" gelir.
sonuc7 : Dizi içinde "er" metni geçen tüm elemanları getirir. Sonuç, "Kayseri" ve "Mersin" olur. Büyük küçük harf duyarlılığı yüzünden "Erzurum" gelmez.
sonuc8 : Dizi içinde "A" ile başlayan tüm elemanları getirir. Bu da "Adana", "Antalya", "Ankara" olacaktır.
sonuc9 : Dizi içinde "r" ile biten tüm elemanları getirir. Bu da "İzmir" ve "Eskişehir" olacaktır.
sonuc10 : Dizi içinde 7 ve daha fazla karaktere sahip tüm elemanları getirir. Bu da "Antalya", "Kayseri", "İstanbul", "Eskişehir", "Erzurum" olacaktır.
sonuc11 : Dizi içindeki "Bursa" metnine sahip tüm elemanları getirir.
sonuc12 : Dizi içindeki "Bursa" veya "Kayseri" metnine sahip tüm elemanları getirir. Sonuç, "Bursa" ve "Kayseri" olur.