Menu
CoddyTech

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) // Guest

Karena nickname adalah nil, operator mengembalikan "Guest". Jika nickname memiliki nilai, nilai itu akan digunakan.

let username: String? = "SwiftCoder"
let greeting = username ?? "Anonymous"
print(greeting) // SwiftCoder

Operator 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.

challenge icon

Tantangan

Mudah
Tulis 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
}
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Dasar-Dasar

Latihan sendiri: Playground Swift