型別轉換是將一個資料型別變數轉換為另一種資料型別的過程。 在Kotlin中,不支援將較小資料型別隱式轉換為較巨量資料型別(在java中支援)。 例如,Int
不能分配轉換為Long
或Double
。
在Java語言中
int value1 = 10;
long value2 = value1; // 有效
在Kotlin語言中
var value1 = 10
val value2: Long = value1 // 編譯錯誤,型別不匹配
但是在Kotlin中,轉換是通過顯式進行的,較小的資料型別可轉換為較大的資料型別,反之亦然。但它是通過使用輔助函式完成的。
var value1 = 10
val value2: Long = value1.toLong()
Kotlin中用於數位轉換的輔助函式列表如下:
toByte()
toShort()
toInt()
toLong()
toFloat()
toDouble()
toChar()
下面來看一個從Int
轉換為Long
的範例。
fun main(args : Array<String>) {
var value1 = 100
val value2: Long =value1.toLong()
println(value2)
}
還可以從較大的資料型別轉換為較小的資料型別。
fun main(args : Array<String>) {
var value1: Long = 200
val value2: Int =value1.toInt()
println(value2)
}