Study
Swift

Optional di Swift

Penjelasan

Optional adalah fitur paling khas Swift untuk mencegah crash akibat nilai kosong (nil) — mirip null safety Kotlin, tapi dengan sintaks dan idiom sendiri. Sebuah tipe data yang mungkin tidak punya nilai ditandai dengan ? di belakangnya (mis. String?). Untuk mengakses nilai di dalam optional dengan aman, Swift punya if let (unwrap kalau ada isinya) dan guard let (unwrap di awal fungsi, keluar lebih dulu kalau nil), plus operator ?? (nil-coalescing, memberi nilai default).

Contoh Konsep

var nama: String? = nil // optional, tanpa ? ini akan error

if let namaAsli = nama {
    print("Halo, \(namaAsli)")
} else {
    print("Nama belum diisi")
}

nama = "CompileDaily"
print(nama ?? "Tamu") // CompileDaily, nil-coalescing

func sapa(nama: String?) {
    guard let namaValid = nama else {
        print("Tidak ada nama")
        return
    }
    print("Halo, \(namaValid)")
}

Praktikum

Buat variabel var kota: String? = nil. Pakai if let untuk mengecek apakah kota ada isinya — kalau ada, tampilkan "Kota: {kota}"; kalau nil, tampilkan "Kota belum diisi".

Editor Latihan

Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.

Tips

Hindari forced unwrap (nama!) kecuali kamu BENAR-BENAR yakin nilainya tidak mungkin nil — forced unwrap akan membuat program crash total kalau ternyata nilainya nil. Utamakan if let, guard let, atau ?? untuk menangani optional dengan aman.