Avatar ·

Como verificar o tipo de um objeto (instanceof) em Kotlin?

Olá a todos! Comecei a estudar Kotlin depois de Java e me deparei com um problema. Em Java, eu estava acostumado a usar o operador `instanceof` para verificar o tipo de um objeto, por exemplo:\n\n```java\nif (obj instanceof String) {\n String str = (String) obj;\n System.out.println(str.length());\n}\n```\n\nMas em Kotlin não consigo encontrar um análogo. Tentei escrever algo como `obj instanceof String`, mas o compilador dá erro. Sei que em Kotlin existe a palavra-chave `is`, mas não tenho certeza de como usá-la corretamente. Além disso, em Java, após a verificação com `instanceof`, eu precisava fazer um cast explícito do tipo, enquanto em Kotlin, pelo que entendi, isso é feito automaticamente? Ou não?\n\nPor favor, me digam como verificar corretamente o tipo de um objeto em Kotlin e fazer o cast seguro para o tipo desejado? Estou interessado não apenas no básico, mas também em...