Aralıklı Switch Kullanımı
Coddy'nin Swift Journey'sinin Temeller bölümünün bir parçası — ders 30 / 86.
Switch ifadeleri, tekil değerler yerine aralıklar kullandığınızda daha da güçlü hale gelir. Bu, bir puanı nota dönüştürmek gibi sayıları gruplara ayırmak için mükemmeldir.
let score = 85
switch score {
case 90...100:
print("A")
case 80..<90:
print("B")
case 70..<80:
print("C")
case 60..<70:
print("D")
default:
print("F")
}... operatörü, her iki uç noktayı da içeren kapalı bir aralık oluşturur, bu nedenle 90...100 ifadesi 90, 91 ve 100'e kadar olan tüm değerlerle eşleşir. ..< operatörü, üst sınırı hariç tutan yarı açık bir aralık oluşturur — 80..<90 ifadesi 80'den 89'a kadar olan değerlerle eşleşir.
Swift her bir durumu sırayla kontrol eder ve ilk eşleşeni çalıştırır. Puanımız 85 olduğu için 80..<90 aralığına düşer, bu nedenle "B" yazdırılır. Bu yaklaşım, karşılaştırma operatörleri ile birden fazla else if koşulu yazmaktan çok daha temizdir.
Görev
Kolayage parametresini alan ve yaş aralıklarına göre yaşam evresi kategorisini döndüren bir getAgeCategory fonksiyonu yazın.
Yaşı beş yaşam evresinden birine kategorize etmek için aralıklar içeren bir switch ifadesi kullanın.
Koşullar:
0...2-"Infant"return edin3...12-"Child"return edin13...19-"Teenager"return edin20...64-"Adult"return edin65...120-"Senior"return edin- Diğer tüm değerler -
"Invalid age"return edin
Parametreler:
age(Int): Kişinin yaşı
Döndürdüğü Değer: String olarak yaşam evresi kategorisi
Kopya kağıdı
Switch ifadeleri, belirli bir aralıktaki değerleri eşleştirmek için aralıkları kullanabilir:
let score = 85
switch score {
case 90...100:
print("A")
case 80..<90:
print("B")
case 70..<80:
print("C")
default:
print("F")
}... operatörü, her iki uç noktayı da içeren bir kapalı aralık oluşturur (örneğin, 90...100, 90'dan 100'e kadar olan değerleri eşleştirir).
..< operatörü, üst sınırı hariç tutan bir yarı açık aralık oluşturur (örneğin, 80..<90, 80'den 89'a kadar olan değerleri eşleştirir).
Swift her bir durumu sırayla kontrol eder ve ilk eşleşeni çalıştırır.
Kendin dene
func getAgeCategory(age: Int) -> String {
// Kodunuzu buraya yazın
}
Bu 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 1
Aritmetik OperatörlerModül OperatörüBileşik AtamaÖzet - Basit MatematikKarşılaştırma Operatörleri7Temel Giriş/Çıkış
Print FonksiyonuString InterpolationReadLine GirişiTür DönüşümüÖzet - 120'ye KadarÖzet - Doğru veya Yanlış10Fonksiyonlar
Fonksiyon TanımlamaParametreler ve ArgümanlarDönüş DeğerleriArgüman EtiketleriÖzet - Sigma FonksiyonuÖzet - Doğrulama FonksiyonuVarsayılan Değerler13Diziler Üzerinde Yineleme
Elemanlar Üzerinde YinelemeEnumerate MetoduStringler Üzerinde Yineleme P1Stringler Üzerinde Yineleme P22Değişkenler
Let vs VarTip BelirteçleriSayılarStringBooleanİsimlendirme KurallarıÖzet - Değişkenleri Başlatma5Operatö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 3Ternary Operatör8Hesap Paylaşım Hesaplayıcısı
Hoş Geldiniz MesajıGirdi Alma14İleri Seviye Diziler
Dizi Dilimleme Bölüm 1Dizi Dilimleme Bölüm 2Sıralı Yapı OperatörleriContains Metodu3Opsiyoneller
Opsiyoneller NedirIf Let ile UnwrappingGuard LetNil Coalescing OperatörüÖzet - Güvenli Unwrapping6Karar Yapıları
If İfadesiIf - ElseÖzet - Basit Hesap MakinesiSwitch İfadesiAralıklı Switch Kullanımı9Döngüler
For-In DöngüsüWhile DöngüsüRepeat-While DöngüsüBreakContinueÖzet - FaktöriyelDöngülerde Aralıklarİç İçe DöngülerÖzet - Dinamik Girdi