Thuta Learning
ရှာဖွေရန်
IntermediateProgrammingbeginner

Optionals

စိတ်လျှော့ပါ။ ဒီခန်းကို စာအုပ်လိုမဟုတ်ဘဲ စကားပြောသလိုပဲ၊ နားလည်လွယ်အောင် ရှင်းပါမယ်။

Optional က Swift ရဲ့အရေးကြီးဆုံး concept တွေထဲကတစ်ခုပါ။ Optional ဆိုတာ တန်ဖိုးရှိနိုင်တယ်၊ မရှိလည်းဖြစ်နိုင်တယ်ဆိုတဲ့ data ကို safe ဖြစ်အောင်ကိုင်တွယ်တဲ့နည်းလမ်းပါ။ တန်ဖိုးမရှိတာကို nil လို့ခေါ်ပါတယ်။

API response, form input, dictionary lookup, user profile image စတာတွေမှာ data မရှိနိုင်တဲ့ case တွေအများကြီးရှိပါတယ်။ Optional က အဲဒီ case တွေကို crash မဖြစ်အောင် စနစ်တကျကိုင်တွယ်ပေးပါတယ်။

swift
var displayName: String? = "Sai Tun"

if let name = displayName {
    print("Hello, \(name)")
} else {
    print("Hello, guest")
}

let fallbackName = displayName ?? "Guest"
print("Profile: \(fallbackName)")

String? က string တန်ဖိုးရှိနိုင်သလို nil လည်းဖြစ်နိုင်တယ်ဆိုတာပါ။ if let က optional ထဲမှာ value ရှိမှ name အနေနဲ့ယူသုံးပါတယ်။ ?? က nil ဖြစ်ရင် fallback value သုံးဖို့ပါ။

You should see
Hello, Sai Tun Profile: Sai Tun

ဒီနေရာမှာ လူအများမှားတတ်တယ်

  • displayName! ကို value မရှိတဲ့အချိန် force unwrap လုပ်ရင် runtime crash ဖြစ်နိုင်ပါတယ်။
Optionals | Thuta Learning