Que fait l'opérateur !! (double-bang) en Kotlin et pourquoi est-il nécessaire ?
Bonjour à tous ! Je viens de commencer à apprendre Kotlin après Java et je suis tombé sur un opérateur étrange `!!`. Par exemple, j'ai vu ce code :
```kotlin
val name: String? = getUserName()
val length = name!!.length
```
Je comprends que `?` signifie que la variable peut être null. Mais pourquoi `!!` est-il nécessaire ? Apparemment, si je suis sûr que la valeur n'est pas null, je peux simplement utiliser `?.` ou écrire `if (name != null)`. Et si je me trompe, j'obtiendrai une NullPointerException — c'est mauvais !
En Java, j'avais l'habitude de vérifier les null avec `if`, mais ici c'est un opérateur agressif. Peut-être que c'est une béquille pour ceux qui sont trop paresseux pour écrire des vérifications ? Ou existe-t-il des situations où `!!` est vraiment justifié ? Expliquez-moi, s'il vous plaît, à quoi il sert, comment il fonctionne et s'il faut vraiment l'utiliser dans des projets réels. Des exemples de code sont les bienvenus.
<<>>
Qu'est-ce que l'opérateur `!!` (double-bang) ?
L'opérateur !! en Kotlin est appelé "not-null assertion operator" (opérateur d'affirmation non-null). Son
No answers yet.
Connectez-vous pour laisser une réponse
Blogs