iT邦幫忙

2022 iThome 鐵人賽

DAY 4
0
Software Development

從0開始的Kotlin學習之旅系列 第 4

[Day 4] 帶符號的(signed)和無符號的(unsigned)數字

  • 分享至 

  • xImage
  •  

整數型態

當您初始化一個沒有明確類型規範的變量時,編譯器會自動推斷具有足以表示該值的最小範圍的類型。
如果不超過 Int 的範圍,則類型為 Int。 如果超過,則類型為 Long
要明確指定 Long 值,請將後綴 L 附加到該值。 顯式類型規範觸發編譯器檢查值不超過指定類型的範圍。

val one = 1 // Int
val threeBillion = 3000000000 // Long
val oneLong = 1L // Long
val oneByte: Byte = 1

浮點數類型

您可以使用具有小數部分的數字初始化 DoubleFloat 變量。
它通過句點 (.) 與整數部分隔開。
對於使用小數初始化的變量,編譯器會推斷出 Double 類型:

val pi = 3.14 // Double
// val one: Double = 1 // Error: type mismatch
val oneDouble = 1.0 // Double

要明確指定值的浮點類型,請添加後綴 fF
如果此類值包含超過 6-7 個十進制數字,則將對其進行四捨五入:

val e = 2.7182818284 // Double
val eFloat = 2.7182818284f // Float, actual value is 2.7182817

與其他一些語言不同,Kotlin 中沒有隱式的數字擴展轉換。
例如,具有 Double 參數的函數只能在 Double 值上調用,而不能在 Float、Int 或其他數值上調用:

fun main() {
    fun printDouble(d: Double) { print(d) }

    val i = 1
    val d = 1.0
    val f = 1.0f

    printDouble(d)
//    printDouble(i) // Error: Type mismatch
//    printDouble(f) // Error: Type mismatch
}

Reference


上一篇
[Day3] 認識基本型態
下一篇
[Day 5] 布林值
系列文
從0開始的Kotlin學習之旅30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言