Sobes.tech
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 пешгирӣ шаванд, ки ин кодро боэътимод ва хонданӣ мегардонад.