Dizi Elemanlarına Erişme
Coddy'nin Ruby Journey'sinin Temeller bölümünün bir parçası — ders 59 / 88.
Bir dizideki her öğenin indeks adı verilen bir konumu vardır. Ruby'de indeksleme 0'dan başlar; yani ilk öğe 0. indekste, ikincisi 1. indekstedir ve bu şekilde devam eder.
Bir öğeye erişmek için dizinle birlikte köşeli parantez kullanın:
fruits = ["apple", "banana", "cherry"]
puts fruits[0] # Çıktı: apple
puts fruits[1] # Çıktı: banana
puts fruits[2] # Çıktı: cherryRuby ayrıca, dizinin sonundan geriye doğru sayan negatif indekslemeyi de destekler. -1 indeksi son öğeyi, -2 sondan bir önceki öğeyi ifade eder ve bu şekilde devam eder:
colors = ["red", "green", "blue"]
puts colors[-1] # Çıktı: blue
puts colors[-2] # Çıktı: greenBir dizinin uçlarına hızlı erişim için first ve last metotlarını da kullanabilirsiniz:
numbers = [10, 20, 30, 40]
puts numbers.first # Çıktı: 10
puts numbers.last # Çıktı: 40Mevcut olmayan bir indekse erişmeye çalışırsanız, Ruby bir hata fırlatmak yerine nil döndürür:
letters = ["a", "b", "c"]
puts letters[10] # Çıktı: (hiçbir şey - nil)Görev
KolaySize aşağıdaki dizi verilmiştir:
planets = ["Mercury", "Venus", "Earth", "Mars", "Jupiter", "Saturn", "Uranus", "Neptune"]Girdiden bir indeksi temsil eden tek bir tam sayı okuyun. Bu indeksteki öğeye erişin ve onu yazdırın.
Girdi negatif olduğunda negatif indeksleme kullanın. Girdi her zaman bu dizi için geçerli bir indeks olacaktır (-8 ile 7 arasında).
Belirtilen indeksteki öğeyi yazdırdıktan sonra, first ve last metotlarını kullanarak dizinin ilk ve son öğelerini ayrı satırlara yazdırın.
Örneğin, girdi 2 ise çıktı şöyle olmalıdır:
Earth
Mercury
NeptuneGirdi -1 ise çıktı şöyle olmalıdır:
Neptune
Mercury
NeptuneGirdi 4 ise çıktı şöyle olmalıdır:
Jupiter
Mercury
NeptuneKopya kağıdı
Dizi öğelerine, 0'dan başlayan bir indeks kullanılarak erişilir:
fruits = ["apple", "banana", "cherry"]
puts fruits[0] # Çıktı: apple
puts fruits[1] # Çıktı: banana
puts fruits[2] # Çıktı: cherryNegatif indeksleme, dizinin sonundan geriye doğru sayar (-1 son öğedir):
colors = ["red", "green", "blue"]
puts colors[-1] # Çıktı: blue
puts colors[-2] # Çıktı: greenİlk ve son öğelere erişmek için first ve last metotlarını kullanın:
numbers = [10, 20, 30, 40]
puts numbers.first # Çıktı: 10
puts numbers.last # Çıktı: 40Mevcut olmayan bir indekse erişmek nil döndürür:
letters = ["a", "b", "c"]
puts letters[10] # Çıktı: (hiçbir şey - nil)Kendin dene
# Gezegenler dizisi
planets = ["Mercury", "Venus", "Earth", "Mars", "Jupiter", "Saturn", "Uranus", "Neptune"]
# Girdiden indeksi oku
index = gets.chomp.to_i
# YAPILACAK: Kodunuzu aşağıya yazın
# 1. Verilen indeksteki öğeye erişin ve yazdırın
# 2. first metodunu kullanarak ilk öğeyi yazdırın
# 3. last metodunu kullanarak son öğeyi yazdırınBu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Temeller bölümündeki tüm dersler
4Operatörler Bölüm 2
Mantıksal Operatörler Bölüm 1Mantıksal Operatörler Bölüm 2Özet - Basit MantıkMantıksal Operatörler Bölüm 3Mantıksal Operatörler Bölüm 47Hesap Paylaşımı Hesaplayıcısı
Hoş Geldiniz MesajıKullanıcı Girdisi Alma13İleri Seviye Diziler
Aralıklar ile Dizi Dilimlemeİndeksler ile Dizi DilimlemeDizi OperatörleriInclude? Metodu2Değişkenler ve Veri Tipleri
Sayılar ve DeğişkenlerString Veri TipiBoolean Veri TipiSymbol Veri TipiVeri Tiplerini Kontrol Etmeİsimlendirme KurallarıÖzet - Değişken Oluşturma8Döngüler
Aralıklar ile For DöngüsüWhile DöngüsüBreakNextÖzet - FaktöriyelTimes DöngüsüUntil Döngüsüİç İçe DöngülerÖzet - Dinamik Girdi11Diziler
Dizi OluşturmaDizi Elemanlarına ErişmeDizileri DeğiştirmeDizi MetotlarıÖzet - Ürün DizisiÖzet - Ters Çevrilmiş DiziDizi Kısayolları3Operatörler Bölüm 1
Aritmetik OperatörlerModulo OperatörüAritmetik KısayollarÖzet - Basit MatematikKarşılaştırma Operatörleri6Temel IO
puts ile Çıktı Almaprint ve p ile Çıktı AlmaDeğişkenlerle Çıktı Almagets ile Girdi AlmaChomp MetoduTip DönüşümüÖzet - Yaş HesaplayıcıÖzet - Doğru mu Yanlış mı9Metotlar
Metot TanımlamaMetot ParametreleriDönüş DeğerleriÖzet - Sigma MetoduÖzet - Doğrulama MetoduVarsayılan Parametre Değerleri12Koleksiyonlar Üzerinde Yineleme
Each Yineleyicisiİndeks ile EachStringler Üzerinde YinelemeMap ve Collect