var
num2
=
"666.6"
var
num3
=
"666"
println
(
"转换失败:
${
num2
?
.
toIntOrNull
(
)
}
,转换成功:
${
num3
.
toIntOrNull
(
)
}
"
)
var
num5
=
"666.6"
println
(
num5
?
.
toIntOrNull
(
)
?:
"前面转换失败,转换结果为null"
)
如果一个
String
类型的值为159.0这样的数时,直接.to
Int
()就会产生报错
Error inflating class fragment
Caused by: java.lang.NumberFormatException: For input
string
: “159.0”
可以
中
间加一个.toFloat()过渡一下,比如:
book.pages = row.getCell(2).to
String
().toFloat().to
Int
() //获取单元格
Kotlin
是一门强类型的
语言
,因此编译器对类型检查非常严格,这种严格保证了
Kotlin
程序的健壮性,因此
Kotlin
不同类型的值经常需要进行相互
转换
,数值型之间的变量和值也可以相互
转换
。
一、整型之间的
转换
不同整型的变量能支持的表数范围是不同的。 如下所示:
Byte型证书在内存
中
通常占8位,表数范围是 -128~127。 兼容Java的byte和Byte类型
Short
Short型证书在内存
中
通常占16位,表数范围是 -32768(-2的15次方)~32767(2的15次方减1)