Kotlin的類型間轉換需要顯式調用。
一、整型間的轉換
整型間的等級
和java不同的是,即使是從低等級賦值給高等級,也要進行顯式調用。
- toByte()
- toShort()
- toInt()
- toLong()
顯式調用後,從低等級到高等級的轉換不會有問題,但是從高等級到低等級的轉換則會有溢出現象,會直接進行截斷處理。
intResult.javaClass
類似於java中intResult.getClass()
二、Char運算
規則:
- Char值加減一個整型值:會對其字符編碼進行加減該整數,結果又轉換爲一個Char型。
- 兩個Char型進行相減:會進行兩個Char值的編碼進行計算,結果得到一個Int型。
- 兩個Char型無法進行相加!!會報錯
三、浮點型與整型間的轉換
浮點型轉爲整型時,會進行小數點的階段。即 4.9 轉爲 4,-2.3 轉爲 -2。
四、表達式類型的自動提升
所有類型的等級
- 表達式中,所有的Byte、Short類型都會被提升爲Int類型。 即使是兩個Byte或兩個Short進行計算,也會提升爲Int類型,結果輸出爲Int類型。
- 整個算數表達式的數據類型會自動提升到表達式中最高等級操作數同樣的類型。