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