如何将字符串转换为整型和长整型?

4

在Java中,我们使用

Integer.valueOf(str)

并且
Long.valueOf(str)

如何在 Kotlin 中获得 整数

5个回答

9
你可以直接使用 toInttoLong 等转换扩展函数。
例如:
val i: Int = str.toInt()
val l: Long = str.toLong()

此外,还有toIntOrNull等方法,以防字符串可能不是有效的数字:

val i: Int? = str.toIntOrNull()

1
或者 val i = str.toIntOrNull() ?: 0 - m0skit0
1
fun String.toIntOrElse(defaultValue: Int) :Int = toIntOrNull() ?: defaultValue usage: val i = str.toIntOrElse(0) - Fredy Mederos

1
Kotlin为String类提供了扩展方法,可以更加优雅地完成相同的操作。
str.toInt()
str.toLong()

请注意,您也可以自己编写扩展方法

1

Kotlin 在 StringNumberConversions.kt 中定义了扩展函数, 如 toInt, toLong 等。这些函数内部调用标准的 Java 函数,例如 java.lang.Integer.parseInt(...)java.lang.Long.parseLong(...)

你可以像下面这样使用它们:

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

1
以下是KOTLIN中可用于解析字符串的扩展方法:

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

1

最好是

val str = ""
val quotaInteger = str.toDouble().toInt()

有时候结束返回的是"123.22"这样的字符串,如果我们使用toInt()函数,会抛出NumberFormatException异常。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接