16. Gün | Ruby de Diziler – Part2 - Müslüm ÜNAL
Dizilere kaldığımız yerden devam edelim. Hatırlarsanız dizileri indexlerine göre çağırabiliyorduk. Peki dizi elemanının indexini bulmak için ne yapmalıyız?
Dizi Elemanının İndexini Bulma
Öncelikle bir dizi tanımlayalım ve bu dizideki herhangi bir elamanın indexini bulalım.
Yukarıdaki örneğimizde meyveler adında bir dizi tanımladık ve içine birkaç meyve girdik. Sonra da bu meyveler dizisi içinde muz verisinin indexini bulduk. İndex bulma işlemi yukarıda görüldüğü gibidir.
Örneğimizin çıktısında da yukarıda ki gibidir. Dizilerde indexlerin 0 dan başladığını hatırlarsak muz verisinin indexinin 1 olduğunu zaten rahatlıkla görebiliyoruz.
Dizilerde Toplam Eleman Sayısını Bulma
Bazen diziler çok uzayabilir yani içerisinde çok veri birikebilir. Veri sayısı çok olan dizilerde, dizi içinde kaç tane veri olduğunu bulmamız gerekirse ne yapmamız gerekir? Böyle bir durumda length ve count fonksiyonlarını kullanarak dizide kaç tane eleman olduğunu kolaylıkla bulabiliriz. Bu iki fonksiyonda aynı görevi görmektedir, hangisini kullanacağınız sizin isteğinize kalmış. Şimdi bu fonksiyonların kullanımını görelim.
Length ve count fonksiyonlarının kullanımı yukarıda görüldüğü gibidir. Bu kodlarımızı çalıştırdığımızda ekran 4 çıktısını alırız, aslında iki tane 4 çıktısı alırız çünkü iki fonksiyonuda yukarıda kullandık ve ikisinin de aynı görevi gördüğünü belirtmiştik.
Dizi İçerisinde Aradığımız Koşula Göre Eleman Bulma
Bazen dizilerde istediğimiz elamanın bulunup bulunmadığını bilmemiz gerekebilir. Böyle durumlarda find ve find_all fonksiyonlarını kullanabiliriz. Find fonksiyonu dizi içerisindeki, koşula uyan sadece tek bir elemanı getirirken find_all fonksiyonu dizi içerisinde koşula uyan bütün elemanları getirmektedir. Şimdi bu fonksiyonların kullanımını görelim.
Find ve find_all kullanımı yukarıda görüldüğü gibidir. İkinci satırda meyveler dizisi içindeki elemanlardan harf sayırları 3’ten büyük olan elemanı getirmesini istedik. Burada sadece elma elemanı ekrana yazılacaktır çünkü hatırlarsanız find fonksiyonu sadece tek eleman getiriyordu. Üçüncü satırda ise find_all fonksiyonunu kullandığımız için harf sayıları 3’ten büyük olan bütün elemanlar ekrana yazdırılacaktır. Şimdi kodlarımızın çıktısını görelim.
Kodlarımızın çıktısı tamda anlattığımız gibidir. Bugünlük bu kadar birdaki Ruby günlüğünde artık dizilere son noktayı koyacağız…