Avatar ·

Équivalent Swift 'if let' en Kotlin : comment déballer un Optional en toute sécurité ?

Bonjour, collègues ! Je suis récemment passé de Swift à Kotlin et je n'arrive pas à trouver un équivalent direct de la construction `if let`. En Swift, j'écrivais souvent : ```swift if let unwrappedValue = optionalValue { print("Valeur présente : \(unwrappedValue)") } else { print("Valeur absente") } ``` Cela permettait de déballer un Optional en toute sécurité et d'utiliser la valeur à l'intérieur du bloc. En Kotlin, comme je l'ai compris, on utilise des types nullables avec un point d'interrogation (par exemple, `String?`) au lieu des Optionals. Mais je n'arrive pas à comprendre comment vérifier proprement et en toute sécurité qu'une valeur n'est pas null, et l'assigner immédiatement à une nouvelle variable immuable. J'ai essayé d'utiliser `?.let`, mais ce n'est pas exactement ce que je veux : ```kotlin val optionalValue: String? = "Hello" optionalValue?.let { unwrappedValue -> println("Valeur présente : $unwrappedValue") } ``` Le problème est que `let` ne permet pas de gérer facilement la branche else (quand la valeur est null). On peut bien sûr utiliser `if (optionalValue != null)`, mais à l'intérieur...