kotlin的使用 - 从将java项目转为kotlin开始

1、2017年5月,谷歌官网将kotlin定义为Android开发官方语言,kotlin以其简洁性、和不为空的特性而被大家欢迎。以我在网上查到的资料来看,kotlin要比java开发的代码少30%,趁着下一个项目还没开始,作为一个Android开发者来说必须的学习一下。

2、工具-Android studio3.0.1;本身支持kotlin,而且可以自动将java项目转为kotlin项目;

(1)转为kotlin方法:ctrl + shift + a 快捷键 输入Convert Java File to Kotlin File

        或 ctrl +alt + shift + k 将 Java 代码转换为 Kotlin

(2)转变时会有一个提示框,建议选择all modules,这样整个项目就都变为kotlin了。然后点击build.gradle中;点击同步最新,则自动下载kotlinjar包;不用做其他操作,非常方便。


3、var和val的区别:

var是一个可变变量,这是一个可以通过重新分配来更改为另一个值的变量。这种声明变量的方式和java中声明变量的方式一样。

val是一个只读变量,这种声明变量的方式相当于java中的final变量。一个val创建的时候必须初始化,因为以后不能被改变。

4、在kotlin中可以不用使用findbyId的方式查找页面定义的id,可以在类中直接调用即可:

首先需要在build.gradle中加入一行代码:

apply plugin: 'kotlin-android-extensions'

截图如下:


在类中可以直接使用定义的id:需要引入包即可;非常方便,本来看了kotlin半天感觉用处不大时,看到了这个方法,决心要把kotlin学下去。


import kotlinx.android.synthetic.main.activity_main.*

5、在定义变量bean时的get、set方法改为:

var id: String? = null
var name: String? = null

定义方法时直接写成fun的形式:for循环也进行了修改

fun getValues() {
    val list = ArrayList<String>()
    list.add("1dialog的使用")
    list.add("2Retrofit")
    list.add("3、图片选择和裁剪")
    valueList.clear()
    for (i in list.indices) {
        val value = BaseValue()
        value.id=""+i
        value.name = list[i]
        valueList.add(value)
    }
}
6、进行点击事件时new AdapterView.OnItemClickListener()改为
object : AdapterView.OnItemClickListener

7、以前的设置adapter时gridview_picture.setAdapter(adapter);改为:

gridview_picture!!.adapter = adapter

?:表示当前是否对象可以为空

!!: 表示当前对象不为空的情况下执行

猜你喜欢

转载自blog.csdn.net/f552126367/article/details/80986935