kotlin開發android
❶ 用 Kotlin 寫 Android 3—數組,集合與字元串
相比 Java,在 Kotlin 里數組的寫法變化還是挺大的,用 xx-Array 的命名規則來聲明一個數組類型,並用 xx-ArrayOf 來進行初始化。
例如整型數組,IntArray 類型,IntArrayOf 是初始化方法,以此類推其他基礎類型也差不多。
要注意的是,String 類型的數組聲明有所不同,Array<String> 表示一個字元串數組,arrayOf 是初始化方法。由此也可以得出,像我們自己定義的一些模型類要是想聲明一個數組應該是和 String 一個用法。
雖說數組的聲明寫法上有差別,但在數組元素的基本使用上可以說相差不大。
Kotlin 里的容器類分三大類,並且每個類又分為不可修改和可修改兩種,這就好比 val 和 var 的變數聲明一樣。默認情況是不可修改的,要想對容器類進行類似增,刪,改的操作就要聲明可修改,即要加上前綴 Mutable-。和數組初始化方法類似,容器類的初始化方法也是 xx-Of 系列,xx 表示具體容器類型,例如如果是可變集合初始化那就是 MutableSetOf。
遍歷
三者都能進行 for-in 循環,
三者都能進行迭代器循環遍歷,
除此之外三者還能進行 forEach 循環遍歷,不過對 Map 來說有 API 24 的版本限制,其次雖說寫法簡單,但可能實用性不那麼強,畢竟實際開發中不會說僅做個簡單遍歷吧。所以我覺得記住上面兩種較通用的寫法就夠了。
字元串的常規方法沒有太大的改變,我們依然可以用 indexOf, subString, replace, split 等方法。對於類型轉換,Kotlin 中的字元串提供了 to-xxx 系列的方法,例如字元串轉整型 toInt,字元串轉浮點型 toFloat 等。
另外一個就是 Kotlin 里用 ${} 替換了 Java 中的 String.format 來用於字元串模板效果。
❷ Kotlin 作為 Android 開發語言相比傳統 Java 有什麼優勢
Kotlin 語言相對 Java 有很多優勢,比如官網介紹的簡潔、安全鉛大,例子見 Kotlin 中文站 首頁,部分示例解析見下文。Kotlin 具有現代(也有稱下一槐粗豎代的)靜態編程語言的很多特點,如類型推斷、多範式支持、可空性表達、擴展函數、DSL 支持等。另外對於安卓開發還提供了 Kotlin 安卓擴展和 Anko 庫,參見 Kotlin 用於 Android 。關於與 Java 互操作,尤其是 Java 調用 Kotlin 是大家普遍覺得坑的地方,除了默認 final 外,還有一個主要原因應該就是名字修飾凳睜,解決方式可以按照它修飾後名字去引用,或者在 Kotlin 端使用 @JvmName 註解來生成便於 Java 使用的名字。具體參見 Java 中調用 Kotlin