Junior
Ce este wrapped?
sobes.tech AI
Răspuns de la AI
wrapped - este valoarea unui tip opțional după o extragere cu succes (unwrapping) a conținutului său. Opționalul Optional<<Wrapped>> fie conține o valoare de tip Wrapped, fie este nil. Extragerea permite accesul la valoarea Wrapped dacă aceasta există.
Exemple de extragere:
-
Extragere forțată (
Force unwrapping)!:var optionalString: String? = "Hello" let unwrappedString = optionalString! // Obține valoarea "Hello" // Dacă optionalString == nil, va avea loc o eroare -
Legare opțională (
Optional binding)if letsauguard let:var anotherOptionalString: String? = "World" if let guaranteedString = anotherOptionalString { // În interiorul acestui bloc, guaranteedString este de tip String (dezambalat) print(guaranteedString) } -
Lanț opțional (
Optional chaining)?:class MyClass { var property: String? } var instance: MyClass? = MyClass() instance?.property = "Value" // Dacă instance nu este nil, se setează proprietatea let retrievedValue = instance?.property // retrievedValue va fi String? -
Operatorul de coalescență null (
Nil-coalescing operator)??:var yetAnotherOptionalString: String? = nil let defaultValue = yetAnotherOptionalString ?? "Default" // defaultValue va fi "Default" (String) // Dacă yetAnotherOptionalString avea o valoare, aceasta ar fi fost utilizată ca unwrapped.
În contextul Swift, valoarea wrapped este direct ceea ce se afla "în interior"ul opționalului înainte de manipulare.