Kotlin的基本資料型別

2021-10-02 00:12:52 字數 2757 閱讀 8655

在學習一門程式語言,那必然是學習語法 ,在語法的學習之中資料型別又有著舉足輕重的地位,今天我們就聊聊kotlin的基本資料型別

kotlin 提供了一組表示數字的內建型別。 對於整數,有四種不同大小的型別,因此值的範圍也不同。

這是kotlin官網的一張關於基本資料型別的截圖,kotlin的一大特點便是資料的型別推倒,所有以未超出 int 最大值的整型值初始化的變數都會推斷為 int 型別。如果初始值超過了其最大值,那麼推斷為 long 型別。 如需顯式指定 long 型值,請在該值後追加 l 字尾。

fun

main()

對於浮點數,kotlin 提供了 float 與 double 型別。 根據 ieee 754 標準, 兩種浮點型別的十進位制位數(即可以儲存多少位十進位制數)不同。 float 反映了 ieee 754 單精度,而 double 提供了雙精度。

val doublevalue =

2.3//自動推斷為double型別

val floatvalue =

2.4f

//通過顯示的新增乙個f宣告float型別資料

請注意,與一些其他語言不同,kotlin 中的數字沒有隱式拓寬轉換。 例如,具有 double 引數的函式只能對 double 值呼叫,而不能對 float、 int 或者其他數字值呼叫。我的理解就是看到這樣寫出來的變數就知道他是啥(是什麼型別的變數),在kotlin中對於整型的字面量包含2進製, 10 進製和16進製制 (不支援8進製)

val value =

1//自動推斷為int型別 十進位制的整型

val value2 =

0x0f

//自動推斷為int型別 十六進製制的整型

val value3 =

0b00001011

//自動推斷為int型別 二進位制的整型

對於float和double型別 預設的字面量是小數,float型別的字面量是後面加了f的小數

val doublevalue =

2.3//自動推斷為double型別

val floatvalue =

2.4f

//通過顯示的新增乙個f宣告float型別資料

kotlin中的顯示轉化就是可以將乙個大的型別通過 to***()轉化為對應的型別

每個數字型別支援如下的轉換:

tobyte()

: byte

toshort()

: short

toint()

: int

tolong()

: long

tofloat()

: float

todouble()

: double

tochar()

: char

kotlin支援數字運算的標準集,運算被定義為相應的類成員(但編譯器會將函式呼叫優化為相應的指令)

浮點數的比較

相等性檢測:a == b 與 a != b

比較操作符:a < b、 a > b、 a <= b、 a >= b

區間例項以及區間檢測:a..b、 x in a..b、 x !

in a..b

字元用 char 型別表示。它們不能直接當作數字,但是我們可以顯式把字元轉換為 int 數字:

fun

decimaldigitvalue

(c: char)

: int

布林用 boolean 型別表示,它有兩個值:true 與 false。若需要可空引用布林會被裝箱。

boolean資料型別的運算

|| – 短路邏輯或

&& – 短路邏輯與

!- 邏輯非

字串用 string 型別表示。字串是不可變的。 字串的元素——字元可以使用索引運算子訪問: s[i]

for

(c in str)

可以用 + 操作符連線字串。這也適用於連線字串與其他型別的值, 只要表示式中的第乙個元素是字串:

val s =

"abc"+1

println

(s +

"def"

)

字串的字面值:kotlin 有兩種型別的字串字面值: 轉義字串可以有轉義字元, 以及原始字串可以包含換行以及任意文字。原始字串 使用三個引號(""")分界符括起來,內部沒有轉義並且可以包含換行以及任何其他字元:

字串模版:字串字面值可以包含模板表示式 ,即一些小段**,會求值並把結果合併到字串中。 模板表示式以美元符($)開頭,由乙個簡單的名字構成:

val i =

10println

("i = $i"

)// 輸出「i = 10」

val s =

"abc"

println

("$s.length is $")

// 輸出「abc.length is 3」

Kotlin基本資料型別

type bitdouble 64float 32long 64int 32short 16byte 8type chararray bytearray shortarray intarray floatarray doublearray 常量 定義 val final hello world st...

Kotlin 基本資料型別

1.資料型別 1 數值 numbers btye short int long float double。2 字元 characters char。3 字串 strings string。4 布林 boolean boolean。5 陣列 arrays array 2.數值 1 長整型 100l 十...

基本資料型別

列舉 定義列舉型別 enum season 定義兩個列舉變數 enum season mylove yourlove 為兩個列舉變數賦值 yourlove fall mylove winter 把列舉值當成無符號整數執行輸出 nslog fall 的值 u fall 3 nslog winter 的...