Operator Nil Coalescing
Termasuk bagian Dasar-Dasar dalam perjalanan Swift di Coddy. Pelajaran 14 dari 86.
Terkadang kamu hanya ingin memberikan nilai default saat optional bernilai nil, tanpa menulis beberapa baris kode. Operator nil coalescing Swift (??) melakukan hal itu. Operator ini membuka optional jika memiliki nilai, atau mengembalikan nilai default jika nilainya nil.
let nickname: String? = nil
let displayName = nickname ?? "Guest"
print(displayName) // GuestKarena nickname adalah nil, operator mengembalikan "Guest". Jika nickname memiliki nilai, nilai itu akan digunakan.
let username: String? = "SwiftCoder"
let greeting = username ?? "Anonymous"
print(greeting) // SwiftCoderOperator nil coalescing cocok untuk pernyataan satu baris saat kamu membutuhkan nilai pengganti. Operator ini lebih ringkas daripada menulis pernyataan if let saat kamu hanya ingin mengganti nil dengan nilai default. Hasilnya selalu berupa nilai non-opsional, jadi kamu bisa langsung menggunakannya tanpa perlu melakukan unwrap lebih lanjut.
Tantangan
MudahTulis fungsi getDisplayName yang menerima username opsional dan defaultName, lalu mengembalikan nama tampilan yang sesuai menggunakan operator nil coalescing.
Jika username kosong (direpresentasikan dengan string kosong ""), perlakukan sebagai nil dan kembalikan nama default. Jika tidak, kembalikan username.
Parameter:
username(String): Nama pengguna (string kosong merepresentasikan nil)defaultName(String): Nama pengganti yang akan digunakan
Nilai yang dikembalikan: Username jika tidak kosong, jika tidak, defaultName.
Petunjuk: Di dalam fungsi, simpan username dalam variabel String?, lalu jika username sama dengan "", atur variabel tersebut menjadi nil menggunakan if sederhana. Kemudian gunakan ?? untuk memberikan nilai pengganti.
Coba sendiri
func getDisplayName(username: String, defaultName: String) -> 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