1. 程式人生 > 其它 >Scala型別轉換

Scala型別轉換

資料型別轉換

1)說明

  • 自動型別提升:多種資料型別混合運算,自動提升到精度最大的資料型別。
  • 高精度賦值到低精度,直接報錯。
  • 除了圖中的隱式型別轉換,都需要強制型別轉換。
  • Byte Short Char計算時會直接提升為Int
  • Boolean不能參與整數浮點運算,不能隱式轉換為整數。

2)練習

package chapter02

object Test08_DataTypeConversion {
  def main(args: Array[String]): Unit = {
    //(1)自動型別提升:多種資料型別混合運算,自動提升到精度最大的資料型別。
    val a1: Byte = 10
    val b1: Long 
= 2353 var result1: Long = a1 + b1 val result11: Int = (a1 + b1.toInt) //強制轉換 //(2)高精度賦值到低精度,直接報錯。 val a2: Byte = 10 val b2: Int = a2 // val c2: Byte = b2 //error //(3)(byte short) 和char之間不會自動相互轉換 val a3: Byte = 10 val b3: Char = 'b' // val c3: Byte = b3 //error val c3: Int = b3 println(c3)
//(4)如果要計算,這三者要轉為Int型別 val a4: Byte = 12 val b4: Short = 25 val c4: Char = 'c' val result4: Int = a4 + b4 val result44: Int = a4 + b4 + c4 println(result44) } }