Junior
Kas ir wrapped?
sobes.tech AI
Atbilde no AI
wrapped ir opcijas vērtības tips pēc tās satura veiksmīgas iegūšanas (unwrapping). Opcija Optional<<Wrapped>> vai nu glabā Wrapped tipa vērtību, vai ir nil. Iegūšana ļauj piekļūt Wrapped vērtībai, ja tā pastāv.
Iegūšanas piemēri:
-
Piespiedu iegūšana (Force unwrapping)
!:var optionalString: String? = "Hello" let unwrappedString = optionalString! // Saņem vērtību "Hello" // Ja optionalString == nil, notiks crash -
Opcijas sasaistīšana (Optional binding)
if letvaiguard let:var anotherOptionalString: String? = "World" if let guaranteedString = anotherOptionalString { // Šajā blokā guaranteedString ir `String` tips (unwrapped) print(guaranteedString) } -
Opcijas ķēde (Optional chaining)
?:class MyClass { var property: String? } var instance: MyClass? = MyClass() instance?.property = "Value" // Ja instance nav nil, īpašība tiek iestatīta let retrievedValue = instance?.property // retrievedValue būs `String?` -
Null-koalescences operators
??:var yetAnotherOptionalString: String? = nil let defaultValue = yetAnotherOptionalString ?? "Default" // defaultValue būs "Default" (String) // Ja yetAnotherOptionalString būtu ar vērtību, tā tiktu izmantota kā unwrapped.
Swift kontekstā wrapped vērtība ir tieši tā, kas atradās "iekšā" opcijā pirms tās apstrādes.