0Pricing
Ruby Academy · Ders

case/when İfadeleri

Çok yönlü dallanma

case/when İfadeleri, CoddyKit'te ücretsiz bir Ruby Academy dersidir. Bu, 4 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Ruby Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Ruby Academy kursu toplamda 4 dersten oluşur.

Çok Yollu Dallanma

Bir değeri birçok olasılıkla karşılaştırdığınızda uzun bir if/elsif zinciri gürültülü hale gelir. Ruby'nin case ifadesi, çok yollu dallanmayı temiz ve okunabilir kılar.

day = "Mon"
case day
when "Sat", "Sun"
  puts "Weekend"
else
  puts "Weekday"
end

Temel case / when

case sonrasındaki değer, when ifadelerinin her biriyle sırayla karşılaştırılır. İlk eşleşme çalıştırılır, ardından denetim end konumuna geçer.

grade = "B"
case grade
when "A"
  puts "Excellent"
when "B"
  puts "Good"
when "C"
  puts "Okay"
end

Her when İçin Birden Çok Değer

Bir when içinde birden çok değeri virgüllerle ayırarak listeleyin. Bunlardan herhangi biri eşleşirse o dal çalışır.

char = "e"
case char
when "a", "e", "i", "o", "u"
  puts "Vowel"
else
  puts "Consonant"
end

else Dalı

Tüm diğer durumları karşılamak için else ekleyin. Eklenmezse eşleşmeyen bir case yalnızca nil döndürür.

code = 500
case code
when 200
  puts "OK"
when 404
  puts "Not Found"
else
  puts "Other status"
end

case Bir İfadedir

if gibi case de eşleşen dalın değerini döndürür; bu nedenle doğrudan atama yapabilirsiniz.

score = 82
letter = case
when score >= 90 then "A"
when score >= 80 then "B"
else "C"
end
puts letter

then Anahtar Sözcüğü

Kısa dallarda gövdeyi when ile aynı satıra yazmak için then kullanın.

n = 3
case n
when 1 then puts "one"
when 2 then puts "two"
when 3 then puts "three"
end

Aralıklarla Eşleştirme

Bir when bir aralık içerebilir. Ruby perde arkasında === işleçini kullanır ve bir aralığın === işleci üyelik denetimi yapar.

score = 73
case score
when 90..100 then puts "A"
when 70..89 then puts "B"
when 0..69 then puts "C"
end

Sınıfa Göre Eşleştirme

Class === object ifadesi, nesne bir örnek olduğunda doğru olduğundan tür üzerinden dallanma yapabilirsiniz.

value = 3.14
case value
when Integer then puts "an integer"
when Float then puts "a float"
when String then puts "a string"
end

=== İşlecinin Sihri

Her when, pattern === value çağrısını yapar. Aralıklar, sınıflar ve düzenli ifadeler kullanışlı === davranışları tanımladığı için case bu kadar esnektir.

email = "jane@example.com"
case email
when /@/ then puts "Looks like an email"
else puts "No @ sign"
end

Öznesiz case

Düzenli bir if/elsif zinciri gibi, boole koşullarından oluşan temiz bir zincir yazmak için case sonrasındaki değeri belirtmeyin.

temp = 5
case
when temp < 0 then puts "Freezing"
when temp < 15 then puts "Cold"
when temp < 25 then puts "Mild"
else puts "Warm"
end

Hepsini Birleştirme

Kararı tek bir değer yönlendirdiğinde case idealdir. Her dal ayrı bir boole denetimiyse öznesiz biçimi tercih edin.

role = :admin
msg = case role
when :admin then "Full access"
when :editor then "Can edit"
when :viewer then "Read only"
else "No access"
end
puts msg

Hızlı Denetim

case/when anlayışınızı sınayın.

Özet

case ifadesini öğrendiniz:

  • when ilk eşleşeni bulur, ardından end konumuna geçer.
  • Tek bir when içinde birden çok değer listelenebilir.
  • case bir değer döndürür ve then kullanımını destekler.
  • Aralıklar, sınıflar ve düzenli ifadeler, when === kullandığı için çalışır.
  • Öznesiz biçim, temiz bir boole zinciridir.
n = 42
kind = case
when n.zero? then "zero"
when n.positive? then "positive"
else "negative"
end
puts kind

Sıkça Sorulan Sorular

“case/when İfadeleri” dersi ücretsiz mi?

Evet — “case/when İfadeleri” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Ruby Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Ruby Academy kursu toplamda 4 dersten oluşur.

“case/when İfadeleri” dersinde ne öğreneceğim?

Çok yönlü dallanma Ruby Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Ruby Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Ruby Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 2. dersidir.

“case/when İfadeleri” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Ruby Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Ruby Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. if, unless, üçlü işleç
  2. case/when İfadeleri
  3. Ruby'de Doğruluk Değeri
  4. Koruma Yan Tümceleri
← Ruby Academy Sayfasına Dön