Varsayılan Değerler
Coddy'nin Swift Journey'sinin Temeller bölümünün bir parçası — ders 57 / 86.
Bazen bir parametre, çoğu zaman kullanılan bir değere sahiptir. Çağıranın bunu her seferinde sağlamasını zorunlu kılmak yerine, bu parametreye bir varsayılan değer atayabilirsiniz.
Varsayılan bir değer atamak için, parametrenin türünden sonra atama operatörünü (=) kullanın:
func greet(name: String, greeting: String = "Hello") {
print("\(greeting), \(name)!")
}
greet(name: "Alice") // Çıktı: Hello, Alice!
greet(name: "Bob", greeting: "Hi") // Çıktı: Hi, Bob!Fonksiyonu çağırırken, varsayılan değerlere sahip parametreleri atlayabilirsiniz. Swift, varsayılan değeri otomatik olarak kullanacaktır. Ancak farklı bir değere ihtiyacınız varsa, yine de açıkça bir değer sağlayabilirsiniz.
Varsayılan değerlere sahip parametreler parametre listesinin sonuna yerleştirilmelidir. Bu, fonksiyon çağrılarının temiz ve okunabilir kalmasını sağlar:
func calculatePrice(base: Double, taxRate: Double = 0.1) -> Double {
return base + (base * taxRate)
}
print(calculatePrice(base: 100)) // Çıktı: 110.0
print(calculatePrice(base: 100, taxRate: 0.2)) // Çıktı: 120.0Varsayılan değerler fonksiyonlarınızı daha esnek hale getirir; yaygın durumlar için basitçe çalışırken, gerektiğinde özelleştirme yapılmasına da olanak tanırlar.
Görev
Kolayname, greeting ve repeatCount parametrelerini alan ve biçimlendirilmiş bir selamlama mesajı döndüren bir formatGreeting fonksiyonu yazın.
Fonksiyon, isteğe bağlı parametreler için varsayılan değerleri kullanmalıdır:
greetingvarsayılan olarak"Hello"olmalıdırrepeatCountvarsayılan olarak1olmalıdır
Selamlama desenini, aralarında boşluk olacak şekilde belirtilen sayıda tekrarlayan bir dize oluşturun.
Parametreler:
name(String): Kişinin adı (zorunlu)greeting(String): Selamlama kelimesi (varsayılan:"Hello")repeatCount(Int): Selamlamanın kaç kez tekrarlanacağı (varsayılan:1)
Döndürdüğü Değer: Selamlama deseninin tekrarlandığı bir dize. Biçim: repeatCount kez tekrarlanan ve tek bir boşlukla ayrılan "[greeting], [name]!" (String)
Örneğin, name değeri "Alice", greeting değeri "Hi" ve repeatCount değeri 2 ise, fonksiyon "Hi, Alice! Hi, Alice!" döndürür.
Sadece name değeri "Bob" olarak çağrılırsa (varsayılanlar kullanılarak), "Hello, Bob!" döndürür.
Kopya kağıdı
Bir parametre için varsayılan değer ayarlamak için, parametre türünden sonra atama operatörünü (=) kullanın:
func greet(name: String, greeting: String = "Hello") {
print("\(greeting), \(name)!")
}
greet(name: "Alice") // Çıktı: Hello, Alice!
greet(name: "Bob", greeting: "Hi") // Çıktı: Hi, Bob!Bir fonksiyonu çağırırken, varsayılan değerleri olan parametreleri atlayabilirsiniz. Swift varsayılanı otomatik olarak kullanacaktır, ancak isterseniz yine de açıkça farklı bir değer sağlayabilirsiniz.
Varsayılan değerlere sahip parametreler, parametre listesinin sonuna yerleştirilmelidir:
func calculatePrice(base: Double, taxRate: Double = 0.1) -> Double {
return base + (base * taxRate)
}
print(calculatePrice(base: 100)) // Çıktı: 110.0
print(calculatePrice(base: 100, taxRate: 0.2)) // Çıktı: 120.0Kendin dene
func formatGreeting(name: String, greeting: String, repeatCount: Int) -> String {
// Kodu 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