Include? Metodu
Coddy'nin Ruby Journey'sinin Temel Bilgiler bölümünün bir parçası. Ders 72 / 88.
Dizilerle çalışırken, bir işlem yapmadan önce belirli bir öğenin var olup olmadığını kontrol etmeniz sık sık gerekir. Ruby’nin include? yöntemi bu soruyu doğrudan yanıtlayarak true veya false döndürür.
fruits = ["apple", "banana", "orange"]
puts fruits.include?("banana") # Çıktı: true
puts fruits.include?("grape") # Çıktı: falseYöntem tam eşleşme arar, bu nedenle dizelerde büyük/küçük harfe duyarlıdır:
colors = ["Red", "Green", "Blue"]
puts colors.include?("Red") # Çıktı: true
puts colors.include?("red") # Çıktı: falseBu yöntem özellikle koşullu ifadelerde kullanışlıdır. Bir öğeyi bulmak için bir dizi üzerinde döngü yapmak yerine, öğenin orada olup olmadığını doğrudan sorabilirsin:
allowed_users = ["alice", "bob", "charlie"]
current_user = "bob"
if allowed_users.include?(current_user)
puts "Access granted"
else
puts "Access denied"
endinclude? yöntemi, sayıda, sembol ve hatta başka diziler de dahil olmak üzere, dizide depolanan her türlü veri türüyle çalışır.
Görev
Kolayİki satır girdi oku:
- Mağazada bulunan öğelerin virgülle ayrılmış dizelerden oluşan bir listesi (ör.
apple,banana,orange,milk,bread) - Alışveriş listendeki öğelerin virgülle ayrılmış dizelerden oluşan bir listesi (ör.
banana,eggs,milk,cheese)
Alışveriş listendeki her öğe için, include? yöntemini kullanarak mağazada bulunup bulunmadığını kontrol et. Mağazanın envanterinde olup olmadığına bağlı olarak her öğeyi Available veya Not available ile birlikte yazdır.
include? yönteminin tam eşleşmeleri kontrol ettiğini unutma; bu nedenle karşılaştırma büyük/küçük harfe duyarlıdır.
Örneğin, girdiler apple,banana,orange,milk,bread ve banana,eggs,milk,cheese ise çıktı şöyle olmalıdır:
banana - Available
eggs - Not available
milk - Available
cheese - Not availableGirdiler Red,Green,Blue ve red,Green,Yellow ise çıktı şöyle olmalıdır:
red - Not available
Green - Available
Yellow - Not availableGirdiler coffee,tea,juice ve coffee,water,tea ise çıktı şöyle olmalıdır:
coffee - Available
water - Not available
tea - AvailableGirdiler pen,pencil,eraser ve pen ise çıktı şöyle olmalıdır:
pen - AvailableKendin dene
# Mağaza envanterini oku (virgülle ayrılmış ürünler)
store_items = gets.chomp.split(",")
# Alışveriş listesini oku (virgülle ayrılmış ürünler)
shopping_list = gets.chomp.split(",")
# TODO: Kodunu aşağıya yaz
# Alışveriş listesindeki her ürünün mağazada bulunup bulunmadığını kontrol et
# include? metodunu kullanarak sonucu yazdırBu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Temel Bilgiler 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 Girdi3Operatö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 CollectKendi başına pratik yap: Online Ruby derleyicisi