盤它,Kotlin入門(一):基本數(shù)據(jù)結(jié)構(gòu)類型、定義常量變量、函數(shù)

(一)數(shù)據(jù)類型

數(shù)值類型

Double              64位  
Float               32位
Long                64位
Int                 32位
Short               16位
Byte                8位      

首字母都是大寫。跟Java不同的是,字符不是數(shù)值類型,它是一個(gè)獨(dú)立的數(shù)據(jù)類型

字符類型

字符類型用Char來(lái)表示,Char必需是單引號(hào) ' 包含起來(lái)的。比如'a','b'。注意Kotlin 中的 Char 不能直接和數(shù)字操作。比如:

fun test(c: Char) {
   // 錯(cuò)誤:類型不兼容
    if (c == 1) {
        // 省略
    }
}

字符串類型

字符串類型用String來(lái)表示。跟Java一樣,字符串類型是不可變的。可以使用方括號(hào)[]來(lái)獲取字符串中的某一個(gè)字符,[]傳入的是字符的索引。比如:

var str = "zhangzhigang"
println(str[0])   // 輸出函數(shù),輸出的內(nèi)容是z

Java中用String的traim()函數(shù)來(lái)消除字符串兩邊的空格,而Kotlin用則用trimMargin()函數(shù)來(lái)表示。

布爾類型

布爾類型用Boolean類型表示,有true和false兩種值。

數(shù)組

Kotlin中,數(shù)組使用類Array實(shí)現(xiàn),帶有一個(gè)size屬性和get()和set()函數(shù)。創(chuàng)建數(shù)組的方式有兩種:

  • 一種是使用函數(shù)arrayOf(),傳入元素的值,中間用逗號(hào)","分隔開。
    比如:var a = arrayOf(1,2,3)
  • 另外一種是使用工廠函數(shù)。
    比如: val b = Array(3, { i -> (i * 2) })

數(shù)組的元素獲取,采用數(shù)組名[角標(biāo)],比如a[0] --->>> 1

除了類Array,還有ByteArray, ShortArray, IntArray,用來(lái)表示各個(gè)類型的數(shù)組 。

(二)定義常量、變量

定義常量 只能賦值一遍,相當(dāng)于Java中被final修飾的變量

語(yǔ)法: val <標(biāo)識(shí)符> : <類型> = <初始化值>

定義變量

語(yǔ)法: val <標(biāo)識(shí)符> : <類型> = <初始化值>

注意:Kotlin的編譯器中有變量類型推斷的機(jī)制,比如說(shuō) var a = "zhangzhigang",我們?cè)诙x變量的時(shí)候,并沒(méi)有嚴(yán)格按照Kotlin的規(guī)則,在這里,Kotlin會(huì)智能的推斷出 a是字符串類型的變量。

(三)定義函數(shù)

定義函數(shù)使用了fun關(guān)鍵字,函數(shù)的參數(shù)的格式為: 參數(shù):參數(shù)類型。這里跟Java有所不同:

Java:
public void get(int a,int b) {
    // 省略
}
Kotlin:
fun sum(a: Int, b: Int): Int {   // Int 參數(shù),返回值 Int
    return a + b
}
sum是函數(shù)名,傳入兩個(gè)參數(shù),都是Int型。

無(wú)返回值的函數(shù)

fun sum(a: Int, b: Int): Int { // Int 參數(shù),返回值 Int
return a + b
}
這里明確的規(guī)定了返回類型是Int,那無(wú)返回值的函數(shù)(類似Java中的void)該怎么寫呢?

fun printSum(a: Int, b: Int): Unit { 
    print(a + b)
}

注意這里用到了Unit 關(guān)鍵字。同時(shí),我們還需要注意兩點(diǎn):1.如果是返回 Unit類型,則可以省略。 2.如果函數(shù)名被public關(guān)鍵字修飾,則函數(shù)一定要有返回值,這里比較一下Java中public的含義。

最后編輯于
?著作權(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)容