iT邦幫忙

2018 iT 邦幫忙鐵人賽
DAY 5
0
Software Development

脫魯實錄之如何30天把到凱特琳(Kotlin)系列 第 5

與 Kotlin 共進午餐 - 數值型態(Byte, Short, Int, Long, Float, Double)

脫魯實錄之如何30天把到凱特琳(Kotlin) - Day5

昨天簡單介紹了 Kotlin 的幾個基本型態後
今天我們專注於數值的形態上做些比較進階的介紹

Kotlin 中屬於整數型態的有:

  1. Byte 範圍為: -128 ~ 127
  2. Short 範圍為: -32768 ~ 32767
  3. Int 範圍為: -2147483648 ~ 2147483647
  4. Long 範圍為: -9223372036854775808 ~ 9223372036854775807

浮點數的型態有:

  1. Float 範圍為: -3.4028235E38 ~ 3.4028235E38
  2. Double 範圍為: -1.7976931348623157E308 ~ 1.7976931348623157E308

可以注意到,Byte, Short, Int, Long它們都是沒有小數點的"整數"數值!!
在宣告方面有以下幾種方式:(大家可以打開 IntelliJ IDEA 一起練習)

var 變數名稱: 變數型態 = 初始值
var numberByte: Byte = 1
var numberShort = 10 //記得昨天說的嗎? 如果宣告時已經給了初始值就可以不用給變數型態,由 Kotlin 來幫你判斷
val numberInt: Int = Int.MAX_VALUE //Int 類別中的靜態常數,MAX_VALUE 為 Int 的最大值 2147483647
var numberLong = Long.MIN_VALUE //同上為 Long 類別中的靜態常數,MIN_VALUE 為 Long 的最小值
var numberFloat: Float = 10.123F //這裡比較特殊,需要在宣告的初始值最後面加上 F 已將其正確歸納為 Float 型態

以上皆為正確的宣告方式,下面給大家幾個會造成編譯錯誤的例子:

var 變數名稱: 變數型態 = 初始值
var numberInt: Int = 10.0 //這裡宣告的變數型態為 Int 但給的值卻是 Double 的型態
var numberByte: Byte = 128 //這裡給的初始值 128 已經超過宣告的變數型態 Byte 的範圍了
var numberLong: Long = 125
numberByte = numberLong //雖然 125 在 Byte 的範圍內,但型態不對,不可以把 Long 型態給 Byte
var numberFloat: Float = 10.123 //需加上 F 否則將認定為 Double 型態

那如果我們真的需要做數值的轉換的話怎麼辦呢?
Kotlin 都幫你準備好了!! ^^
每個型態都有下列幾個數值轉換的方法(Function)可以使用

  1. toByte()
  2. toShort()
  3. toInt()
  4. toLong()
  5. toFloat()
  6. toDouble()

不過要特別注意的是:

  1. 數值大小一樣不能超過轉換後的型態的範圍,否則跑起來就不會是你要的結果喔,可以試著練習打看看
  2. 如果是由浮點數型態轉成整數型態的話,原本的小數點就會捨去囉

介紹到這邊,大家應該已經想要開始玩起數字的加減乘除了
但記得小學老師教的嗎?先乘除後加減喔~~
寫程式的時候也是一樣的
如果必須要先加減的話記得先括弧起來喔~~
大家趕快打開 IntelliJ IDEA 多多練習吧!!

由於小妹我打這篇時人在高鐵上
晃來晃去的我眼睛有點花啦~
今天先介紹到這邊
明天就來介紹字串的部分囉~~


上一篇
與 Kotlin 共進早餐 - 變數型態簡介
下一篇
與 Kotlin 共進晚餐 - 字串、布林型態
系列文
脫魯實錄之如何30天把到凱特琳(Kotlin)30

尚未有邦友留言

立即登入留言