Avatar ·

Que signifie le point d'exclamation en Kotlin ? (Point d'exclamation simple)

Bonjour, collègues ! J'ai récemment commencé à étudier Kotlin après Java, et une chose me trouble. Dans certains endroits du code, je vois un point d'exclamation simple après le type de données, par exemple `String!` ou `List!`. Je comprends que Kotlin distingue strictement les types nullable (`String?`) et non-null (`String`), mais qu'est-ce que `String!` ? Dans la documentation officielle, je n'ai pas trouvé cela. Voici un exemple de mon projet où j'utilise une bibliothèque Java : ```kotlin // Code Java public class JavaClass { public static String getString() { return null; // peut retourner null } } // Code Kotlin fun main() { val result: String! = JavaClass.getString() // L'IDE affiche String! println(result.length) // Ici, je m'attends à une erreur de compilation, mais il n'y en a pas } ``` L'IDE (IntelliJ IDEA) affiche le ty