Kotlin型別轉換


型別轉換是將一個資料型別變數轉換為另一種資料型別的過程。 在Kotlin中,不支援將較小資料型別隱式轉換為較巨量資料型別(在java中支援)。 例如,Int不能分配轉換為LongDouble

在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()

Kotlin型轉換範例

下面來看一個從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)  
}