Junior — Middle
Оё имкон дорад, ки татбиқи худсохти навъи Optional барои коркарди арзишҳои эҳтимолан нопадидшуда созем?
sobes.tech AI
Ҷавоб аз AI
Бале, мумкин аст, ки навъи Optional-и худро барои кор бо арзишҳое, ки мумкин аст, набошанд, эҷод кунед. Дар Swift, Optional як фароишти аст, ки ё арзишро дорад ё nil.
Масалан, иҷрои оддӣ барои навъи Optional-и худ:
enum MyOptional<T> {
case some(T)
case none
func unwrap() -> T? {
switch self {
case .some(let value):
return value
case .none:
return nil
}
}
}
// Истифода
let value: MyOptional<Int> = .some(10)
if let unwrapped = value.unwrap() {
print("Арзиш: \(unwrapped)")
} else {
print("Арзиши мавҷуд нест")
}
Бо ҳамин роҳ, шумо метавонед навъи худро эҷод кунед, ки мувофиқи принсипи Optional кор мекунад ва бо арзишҳои норасои бехатарӣ кор мекунад.