Intereting Posts
Kotlin: Невозможно импортировать по требованию из объекта Идентификация Котлина не работает должным образом kotlin, которая может использовать соединение httpS без проверки сертификата (например, curl – insecure) Ссылка Int :: class.javaPrimitiveType.kotlin не равна Int :: class.javaObjectType.kotlin Как создать кнопку в Kotlin, которая открывает новую активность (Android Studio)? Как получить данные из более чем одного json api Location.distanceTo возвращает значение в метрах, но мне нужны ноги Неопределенная ссылка для Holdr в Котлине JOOQ с Gradle и Kotlin не генерируют файлы Java / Kotlin шифрует ключ AES с открытым и открытым ключом метод расширения для класса утилиты из внешней библиотеки Spring Boot: изменить идентификатор заполнителя У меня ошибка в android с Kotlin Сортировка строк по символу и длине Текстовый объект объекта Kotlin, реализующий дикий кардочесальный, саморегуляторный общий интерфейс

Как передать String в Int и Long?

В Java мы используем

 Integer.valueOf(str) 

а также

 Long.valueOf(str) 

чтобы получить integer но как мы можем сделать то же самое в Kotlin ?

Вы можете просто использовать toInt , toLong и аналогичные расширения для преобразования.

Например:

 val i: Int = str.toInt() val l: Long = str.toLong() 

Также есть toIntOrNull и т. Д., Если ваши строки могут быть недействительными:

 val i: Int? = str.toIntOrNull() 

У Kotlin есть методы расширения для класса String, которые делают то же самое, но более элегантно.

 str.toInt() str.toLong() 

Обратите внимание, что вы также можете сами писать методы расширения .

Kotlin определяет функцию расширения в StringNumberConversions.kt как toInt , toLong и т. Д. Эти функции внутренне вызывают стандартную java-функцию, такую ​​как java.lang.Integer.parseInt(...) или java.lang.Long.parseLong(...)

Вы можете использовать их так:

 "123".toInt() "123".toLong() 

Это методы расширения, доступные для Strings для анализа в KOTLIN:

  str.toBoolean() str.toInt() str.toLong() str.toFloat() str.toDouble() str.toByte() str.toShort()