Ruby ile Başlangıç – Diziler

Ruby’nin en güçlü yanlarından biri dizilerdir. Dizilere erişim gerçekten çok rahat ve güçlüdür. Diziler C ve Java’da olduğu gibi ‘0’ tabanlıdır. Bazı Özelliklerine değinecek olursak;
[ruby]
# (“) isareti yerine baska bir isaret de kullanilabilir, (|) gibi.
%w”Uordek israf karsisinda deli olur”.each { |item|
p item
}
arr = Array.new # veya arr = []
newArr = [1,2,3]
15.downto(1) { |i|
arr.push(i)
}
p arr
arr.sort!
p arr
# Ortak elemanlari verir, tekrar eden elemanlari dikkate almaz.
p arr & newArr
p newArr.concat([4,5]) # newArr += [4,5]
p arr[-1] # Son elemanı verir.
p arr[-2] # Sondan bir Önceki elemanı verir.
p arr[2..5] # 2. sayi ile 5. sayi arasindaki sayilari verir. 2. ve 5. dahil.
p arr.at(2) # arr[2] ile aynidir. Fakat daha hizlidir,2..5 gibi degerleri desteklemez.
p arr.delete(10) # Degeri “10” olan elemani diziden siler.
p arr.delete_at(-3) # Sondan 3. elemani siler.
p arr.index(8) # Degeri 8 olan dizi elemanin hangi sirada oldugunu soyler.
p arr.length # arr.size, dizinin uzunlugunu verir.
p arr.push(16) # dizinin sonuna bir eleman ekler.
p arr.pop # Dizinin sonundan bir eleman cikarir.
p arr.reverse # diziyi ters cevirir
p arr.sort {|a,b| b <=> a } # dizi siralar iken, bizim kod yazmamiza izin verir.
p “Dizinin gercek hali..”
p arr
[/ruby]

Hash’ler en az diziler kadar Önemli ve güçlüdür. Dizilerde dizi elemanlarına ulaşmak için sıra kullanılırken, Hash’lerde verilen anahtar değer kullanılır. Yani Hash’te veriler bir anahtar ile beraber saklanır, bu anahtar kullanılarak Hash içerisinde saklanan değerlere ulaşılabilir.

Önemli bir uyarı, Hash içerisinde yer alan elemanların anahtar sÖzcüklerini ekledikten sonra değiştirmemek gerekir. Eğer bir değişiklik yapılacaksa “rehash” methodunun uygulanması gerekir.
[ruby]
# 15, 10, 20, 2 değerleri anahtar ifadeleri gÖstermektedirler.
# “0”, “2”, “1” ve “5” değerleri ise => işareti ile anahtar eşleştirilmiş değerlerdir.
hsh = {15 => “0”, 10 => “2”, 20 => “1”, 2 => “5”}
p hsh
hsh[15] = “150”
p hsh[15]
hsh.default = “000”
p hsh[7]
hsh[7] = “7”
hsh.sort.each {|key, value| print key, ” is “, value, “\n” }
p “Hash’in gercek degeri..”
hsh.each {|key, value| print key, ” is “, value, “\n” }
[/ruby]

Kolay gelsin…:)

Share