(一)、Kotlin學(xué)習(xí)

Kotlin

Kotlin 是一種在 Java 虛擬機(jī)上運(yùn)行的靜態(tài)類型編程語言,被稱之為 Android 世界的Swift,由 JetBrains 設(shè)計開發(fā)并開源。Kotlin 可以編譯成Java字節(jié)碼,也可以編譯成 JavaScript,方便在沒有 JVM 的設(shè)備上運(yùn)行。在Google I/O 2017中,Google 宣布 Kotlin 成為 Android 官方開發(fā)語言。

為什么學(xué)習(xí)Kotlin

  • 簡潔: 大大減少樣板代碼的數(shù)量。
  • 安全: 避免空指針異常等整個類的錯誤。
  • 互操作性: 充分利用 JVM、Android 和瀏覽器的現(xiàn)有庫。
  • 工具友好: 可用任何 Java IDE 或者使用命令行構(gòu)建。
  • Android 官方開發(fā)語言

Hello World

Kotlin 程序文件以 .kt

package com.rairmmd.kt1                      //  可選的包頭
 
fun main(args: Array<String>) {    // 包級可見的函數(shù),接受一個字符串?dāng)?shù)組作為參數(shù)
   println("Hello World!")         // 分號可以省略
}

Kotlin環(huán)境搭建

IntelliJ IDEA

下載安裝IntelliJ IDEA,創(chuàng)建工程時選擇Kotlin工程。

Android Studio

Android Studio 3.0 內(nèi)置了Kotlin,創(chuàng)建項目時勾上Kotlin支持即可。
如果用的不是3.0版本,可安裝Kotlin插件來支持Kotlin使用。

Eclipse

打開 Eclipse,選擇 Help -> Eclipse Marketplace… 菜單,搜索 Kotlin 插件

然后重啟 Eclipse 選擇 Window -> Open Perspective -> Other...,如果看到了 Kotlin 選項表明安裝成功。

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

Kotlin 的基本數(shù)值類型包括 Byte、Short、Int、Long、Float、Double 等。不同于Java的是,字符不屬于數(shù)值類型,是一個獨(dú)立的數(shù)據(jù)類型。

基本數(shù)據(jù)類型

類型
Double 64
Float 32
Long 64
Int 32
Short 16
Byte 8

字符

和 Java 不一樣,Kotlin 中的 Char 不能直接和數(shù)字操作,Char 必需是單引號''包含起來的。比如普通字符 '0','a'。

字符字面值用單引號括起來: '1'。 特殊字符可以用反斜杠轉(zhuǎn)義。 支持這幾個轉(zhuǎn)義序列:\t、 \b、\n、\r、'、"、\ 和 $。

布爾

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

數(shù)組

數(shù)組用類 Array 實現(xiàn),并且還有一個 size 屬性及 get 和 set 方法,由于使用 [] 重載了 get 和 set 方法,所以我們可以通過下標(biāo)很方便的獲取或者設(shè)置數(shù)組對應(yīng)位置的值。
數(shù)組的創(chuàng)建兩種方式:一種是使用函數(shù)arrayOf();另外一種是使用工廠函數(shù)。

注意: 與 Java 不同的是,Kotlin 中數(shù)組是不型變的(invariant)。
除了類Array,還有ByteArray, ShortArray, IntArray,用來表示各個類型的數(shù)組,省去了裝箱操作,因此效率更高,其用法同Array一樣。

字符串

和 Java 一樣,String 是可不變的。方括號 [] 語法可以很方便的獲取字符串中的某個字符,也可以通過 for 循環(huán)來遍歷。

類型轉(zhuǎn)換

由于不同的表示方式,較小類型并不是較大類型的子類型,較小的類型不能隱式轉(zhuǎn)換為較大的類型。 這意味著在不進(jìn)行顯式轉(zhuǎn)換的情況下我們不能把 Byte 型值賦給一個 Int 變量。

每種數(shù)據(jù)類型都有下面的這些方法,可以轉(zhuǎn)化為其它的類型:

toByte(): Byte
toShort(): Short
toInt(): Int
toLong(): Long
toFloat(): Float
toDouble(): Double
toChar(): Char
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

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

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