Intern
Опционалҳо дар Swift чистанд?
sobes.tech AI
Ҷавоб аз AI
Дар Swift, намудҳои интихобӣ намудҳое мебошанд, ки метавонанд дорои арзиши муайян ё nil (набудани арзиш) бошанд. Онҳо барои кор бо тағйирёбандаҳое, ки эҳтимолан арзиш надошта бошанд, барои пешгирӣ кардани хатоҳои вобаста ба null, истифода мешаванд.
Намуди интихобӣ бо нишони савол ? пас аз намуд эълон карда мешавад, масалан:
var name: String? // тағйирёбанда метавонад як сатр ё nil дошта бошад
Барои дастрасӣ ба арзиши намудҳои интихобӣ, бояд онро "хомӯш" (unwrap) кард, масалан, бо истифода аз сохтори if let:
if let actualName = name {
print("Номи: \(actualName)")
} else {
print("Номи дастрас нест")
}
Намуди интихобӣ бехатарии намудҳоро таъмин мекунад ва кӯмак мекунад, ки хатогиҳо бо nil пешгирӣ шаванд, ки ин кодро боэътимод ва хонданӣ мегардонад.