二、基本類型

科技資訊
2017年6月,最新一期的TIOBE編程語(yǔ)言排行已發(fā)布,對(duì)比去年同期,排名前5名的語(yǔ)言的排序沒有發(fā)生變化,還是Java,C,C++,Python,C#。但值得注意的是,Kotlin排名首次進(jìn)入前50名(43)。

在 Kotlin 中,所有東西都是對(duì)象,在這個(gè)意義上講所以我們可以在任何變量上調(diào)用成員函數(shù)和屬性。有些類型是內(nèi)置的,因?yàn)樗麄兊膶?shí)現(xiàn)是優(yōu)化過(guò)的。但是用戶看起來(lái)他們就像普通的類。本節(jié)我們會(huì)描述大多數(shù)這些類型:數(shù)字、字符、布爾和數(shù)組。

Number類型

和Java一樣,Kotlin提供了一些內(nèi)置類型作為它的數(shù)值類型。

Type Bit width
Double 64
Float 32
Long 64
Int 32
Short 16
Byte 8

小知識(shí)
數(shù)值型數(shù)據(jù)是表示數(shù)量可以進(jìn)行數(shù)值運(yùn)算的數(shù)據(jù)類型。

Characters類型

Characters代表的就是Char類型,不能直接的當(dāng)做數(shù)字進(jìn)行運(yùn)算。做運(yùn)算之前,我們需要將其轉(zhuǎn)換為數(shù)值類型。

fun check(c: Char) {
  if (c == 1) { // ERROR: incompatible types
    // ...
  }
}
fun operate(c: Char) {
 c.toInt() - '0'.toInt() // SUCCESS: Explicit conversions to numbers
}

特殊的轉(zhuǎn)義字符使用反斜杠:\t, \b, \n, \r, \’, \”, \ 和 $。

Boolean類型

字符是由單引號(hào)包裹的:'1',特殊的字符通過(guò)反斜杠\轉(zhuǎn)義,下面的字符序列支持轉(zhuǎn)義:\t,\b,\n,\r,',",\和$。編碼任何其他字符,使用 Unicode 轉(zhuǎn)義語(yǔ)法:\uFF00。

Array類型

數(shù)組在 Kotlin 中由 Array 類表示,有 get 和 set 方法,和 size 屬性,以及一些常用的函數(shù)。

class Array<T> private constructor() {
    val size: Int
    operator fun get(index: Int): T
    operator fun set(index: Int, value: T): Unit
    operator fun iterator(): Iterator<T>
    // ...
}

如何創(chuàng)建數(shù)組?

  • 使用arrayOf(1, 2, 3) 創(chuàng)建了一個(gè)[1, 2, 3] 這樣的數(shù)組。
  • 使用庫(kù)函數(shù) arrayOfNulls() 創(chuàng)建一個(gè)指定大小的空Array。
  • 另一種方式就是使用工廠函數(shù),接受一個(gè)數(shù)組大小參數(shù)以及一個(gè)可以根據(jù)給定索引創(chuàng)建初始值的函數(shù)。

String類型

字符串的每個(gè)元素都是字符,可以使用索引訪問:str[i],可以使用for循環(huán)進(jìn)行遍歷。字符串類型有以下4種表達(dá)方式。
1.普通字符串

val s = "Hello, world!"

2.轉(zhuǎn)義字符串

val s = "Hello, world!\n"

3.原生字符串

val text = """
  for (c in "foo")
    print(c)
"""

4.字符串模版
如果需要將某個(gè)變量的值作為字符串的一部分,只需在該變量前加上$放入字符串即可。

val i = 10
val s = "i = $i" // evaluates to "i = 10"

也可以加上中括號(hào)

val s = "abc"
val str = "$s.length is ${s.length}" // evaluates to "abc.length is 3"
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容