自Google官方放出Kotlin将成为开发Android的主力语言已经有一段时间了,今天刚好项目组没有事情(估计这几天都没有什么事情)所以过来学习一下,我也是菜鸟一名,希望大家可以和我一起学习。
Kotlin中 var 和 val 的区别。
var 是可变变量:
val 是只读变量(不可以再被重新赋值):val cannot be reassigned
val有点像java中的finalkotlin中的赋值操作
Kotlin中给变量赋值时,有以下两种情况:
状况一(直接赋值):
var phone = "15075993915"
大家是不是很好奇我没有写参数类型,是的我没有写,Kotlin中这种写法是可以自动识别类型的
状况二(延时赋值):
//在这里先声明
lateinit private var button: Button
//在合适的位置进行赋值(比如Activity中的OnCreate方法中)
button = findViewById(R.id.test_id) as Button
在这里lateinit的意思就是为了延时赋值,如果不加lateinit将代码写成这样:
//这句代码是编译不通过的
private var button: Button
- Kotlin中的数组:
Kotlin中的数组的创建
方式一:
我们可以使用库函数arrayOf() 来创建一个数组并传递元素值给它
var arrays = arrayOf("123","456","789")
这样 arrayOf(“123”,”456”,”789”) 创建了 array [“123”,”456”,”789”],数组的类型也是可以自动识别的
方式二:
库函数arrayOfNulls() 可以用于创建一个指定大小、元素都为空的数组
var arrays = arrayOfNulls<String>(10)
- Kotlin中的集合:
List集合的创建方法:
方法一:
我们可以使用库函数listOf() 来创建一个集合并传递元素值给它
var items = listOf("123", "456", "789")
这样创建出来的集合是只读的,不可以在进行add操作。
方法二:
private var mList: ArrayList<String> = ArrayList()
这种创建方式和java类似,使用这种方式得到的集合是可读可写的。
**
- Kotlin中的for循环:
**
方式一:
for (index in 0..10) {
Log.e("index", "" + index)
mList.add("item:" + index)
}
这句话是遍历 0 到10之间的数包括10,也就是说这个循环会执行11次。
for (index in 0 until 10) {
Log.e("index", "" + index)
mList.add("item:" + index)
}
这句话页是遍历 0 到10之间的数,但这句话是左闭右开的所以它不包含10。
方式二:
//遍历集合中的内容
for (item in items) {
Log.e("item", item)
}
//遍历集合中的下表
for (i in 0 until items.size) {
Log.e("i", "$i")
}
**
- Kotlin中的字符串模板:
**
使用字符串模板
var a = 1
// 模板中的简单名称:
val s1 = "a is $a"
输出: a is 1
a = 2
// 模板中的任意表达式:
val s2 = "${s1.replace("is", "was")}, but now is $a"
输出:a was 1, but now is 2
这个应该看的懂吧,我就不解释了。
明天我会写一篇使用Kotlin编写Android适配器的文章,希望能给大家带来帮助,今天就先到这里了。