Que signifie le point d'exclamation (!) en Swift ? Problème avec les types optionnels
Salut ! Je viens de commencer à apprendre Swift et je rencontre constamment le point d'exclamation (!) dans le code des autres. Par exemple, j'ai vu ce code :
```swift
var name: String! = "Alice"
print(name!)
let array: [String?] = ["hello", nil, "world"]
if let value = array.first {
print(value!) // pourquoi ! ici ?
}
```
Je comprends que cela a un rapport avec les types optionnels (Optionals), mais je suis confus. Par endroits, je vois un point d'interrogation (?), ailleurs un point d'exclamation (!).
On m'a dit que ! est un "déballage forcé" (forced unwrapping), mais je ne comprends pas quand il est sûr de l'utiliser. Par exemple, si j'écris :
```swift
var optionalNumber: Int? = nil
let number = optionalNumber! // crash de l'application !
```
l'application plante avec une erreur. Pourquoi un opérateur aussi dangereux existe-t-il ? N'y a-t-il pas des alternatives plus sûres ? Comment travailler correctement avec les optionnels en Swift ? Expliquez-moi en détail avec des exemples.
No answers yet.
Connectez-vous pour laisser une réponse
Blogs