Nilai Default
Termasuk bagian Dasar-Dasar dalam perjalanan Swift di Coddy. Pelajaran 57 dari 86.
Terkadang, sebuah parameter memiliki nilai yang digunakan hampir setiap saat. Daripada mengharuskan pemanggil untuk memberikannya setiap kali, kamu bisa menetapkan nilai default untuk parameter tersebut.
Untuk menetapkan nilai default, gunakan operator penugasan (=) setelah tipe parameter:
func greet(name: String, greeting: String = "Hello") {
print("\(greeting), \(name)!")
}
greet(name: "Alice") // output: Hello, Alice!
greet(name: "Bob", greeting: "Hi") // output: Hi, Bob!Saat memanggil fungsi, kamu dapat menghilangkan parameter yang memiliki nilai default. Swift akan menggunakan nilai default secara otomatis. Namun, jika kamu memerlukan nilai yang berbeda, kamu tetap dapat memberikannya secara eksplisit.
Parameter dengan nilai default sebaiknya diletakkan di akhir daftar parameter. Ini membuat pemanggilan fungsi tetap rapi dan mudah dibaca:
func calculatePrice(base: Double, taxRate: Double = 0.1) -> Double {
return base + (base * taxRate)
}
print(calculatePrice(base: 100)) // output: 110.0
print(calculatePrice(base: 100, taxRate: 0.2)) // output: 120.0Nilai default membuat fungsi-fungsimu lebih fleksibel. Fungsi-fungsi tersebut dapat digunakan dengan mudah untuk kasus umum, tetapi tetap memungkinkan penyesuaian saat diperlukan.
Tantangan
MudahTulis fungsi formatGreeting yang menerima name, greeting, dan repeatCount, lalu mengembalikan pesan sapaan yang sudah diformat.
Fungsi tersebut harus menggunakan nilai default untuk parameter opsional:
greetingharus memiliki nilai default"Hello"repeatCountharus memiliki nilai default1
Buat string yang mengulang pola sapaan sebanyak jumlah yang ditentukan, dengan spasi sebagai pemisah.
Parameter:
name(String): Nama orang tersebut (wajib)greeting(String): Kata sapaan (default:"Hello")repeatCount(Int): Berapa kali sapaan diulang (default:1)
Nilai kembali: Sebuah string yang berisi pola sapaan yang diulang. Format: "[greeting], [name]!" diulang sebanyak repeatCount kali, dengan satu spasi sebagai pemisah (String)
Contohnya, jika name bernilai "Alice", greeting bernilai "Hi", dan repeatCount bernilai 2, fungsi tersebut mengembalikan "Hi, Alice! Hi, Alice!".
Jika dipanggil hanya dengan name bernilai "Bob" (menggunakan nilai default), fungsi tersebut mengembalikan "Hello, Bob!".
Coba sendiri
func formatGreeting(name: String, greeting: String, repeatCount: Int) -> String {
// Tulis kodemu di sini
}
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Dasar-Dasar
4Operator Bagian 1
Operator AritmetikaOperator ModuloPenugasan GabunganUlasan: Matematika SederhanaOperator Perbandingan7I/O Dasar
Fungsi printInterpolasi stringInput ReadLineKonversi tipe dataRangkuman: Sampai 120Rangkuman: Benar atau Salah10Fungsi
Deklarasikan FungsiParameter dan ArgumenNilai KembalianLabel ArgumenUlasan: Fungsi SigmaUlasan: Fungsi ValidasiNilai Default13Melakukan Perulangan pada Urutan
Melakukan Perulangan pada ElemenMetode EnumerasiMelakukan Perulangan pada String P1Melakukan Perulangan pada String P22Variabel
let vs varAnotasi TipeBilanganstringBooleanKonvensi PenamaanRingkasan: Inisialisasi Variabel5Operator Bagian 2
Operator Logika Bagian 1Operator Logika Bagian 2Ulasan: Logika SederhanaOperator Logika Bagian 3Operator Ternary8Kalkulator Pembagi Tagihan
Pesan SambutanMendapatkan Input11FizzBuzz dengan Variasi
Gambaran Umum PermainanFungsi FizzBuzz3Optional
Apa Itu OptionalMembuka Optional dengan If LetGuard LetOperator Nil CoalescingUlasan: Membuka Optional dengan Aman6Pengambilan Keputusan
Pernyataan IfIf - ElseRekap: Kalkulator SederhanaPernyataan SwitchSwitch dengan Rentang9Perulangan
For-In LoopWhile LoopRepeat-While LoopBreakContinueRingkasan: FaktorialRentang dalam LoopLoop BersarangRingkasan: Input DinamisLatihan sendiri: Playground Swift