Avatar ·

Como converter uma string para o tipo Long em Kotlin? Formas seguras e tratamento de erros

Olá a todos! Comecei a estudar Kotlin depois de Java e tive um problema com a conversão de uma string para um número do tipo Long. Preciso ler um valor numérico de um campo de texto em uma aplicação e realizar operações aritméticas com ele.

\n\n

Aqui está um exemplo do meu código:

\n\n
val input = "1234567890123"\nval number: Long = input.toLong()\nprintln(number * 2)
\n\n

Isso funciona quando a string contém garantidamente um número válido. Mas e se o usuário digitar algo como "abc123" ou "12.34"? Nesse caso, o programa trava com NumberFormatException. Em Java, eu usava try-catch ou verificava com Long.parseLong, mas no Kotlin existem métodos embutidos mais elegantes?

\n\n

Outra pergunta: como lidar com o caso em que a string pode ser null? Por exemplo, co