显示转化

对于不同的展示,小的类型并不是大类型的子类。

  • 将较小的类型赋值给较大的类型并不会成功,是语法错误。

    每个数字都含有以下方法:

    * 1.toByte()

    * 2.toShort()

    * 3.toInt()

    * 4.toLong()

    * 5.toFloat()

    * 6.toDouble()

    * 7.toChar()

val b: Byte = 1 // OK, literals are checked statically
val i: Int = b // ERROR

可以显示的将其进行转换。

val i: Int = b.toInt() // OK: explicitly widened

* 没有隐式转换是很少见的,因为可以通过上下文和数学计算得出结果的合适类型,如:

val l = 1L + 3 // Long + Int => Long

results matching ""

    No results matching ""