Kotlin基本语法--常量、变量、方法的定义

2017-07-26  本文已影响1293人  半截铅笔

该文为个人学习笔记,如有错误,烦请大佬指出~~~

常量及变量定义

1.常量定义

a.val (只读变量)
--eg.
    val TAG = Knowledge::class.java.simpleName

b.var (可变变量)
--eg.
    var author = "lyw"
    author ="liuyawei"

注:申明变量、常量时,如果同时初始化,则不需要在申明时去限定类型

c.const(编译器、属性值就确定、并且不存在get、set方法)
--eg.
    companion object {
        const val TAG = "Knowledge"
    }

2.变量定义

a.申明时直接实例化
--eg.
    val arr = arrayOfNulls<Long>(4)

--延迟实例化(lateinit、lazy)
    --lateinit 常用语控件的实例化
    --eg.
        lateinit var arr: ArrayList<String>

        fun initKnowledge() {
            arr = ArrayList()
            //do something
        }

    --lazy 常用于单例中对象的实例化
    --eg.
    private val prefs by lazy { KotlinApplication.getContext()
    .getSharedPreferences(Constants.NAME_SHARED_PREFERENCE, Context.MODE_PRIVATE) }

b.可为null的变量
--eg.
    var str: String? = null
    
    --使用时需要使用?操作符
    var content = "${str?.length}"
    
    --针对于可为null的变量使用时,我们可以指定默认值
    var strContent = "${str?.length?: "0"}"

方法

a.方法定义
--通过fun 关键字
--eg.
    fun getTag() {
        //do something
    }


b.静态方法
--eg.
    companion object {
     val TAG = Knowledge::class.java.simpleName

     fun getTag(): String {
          return TAG
        }
    }

c.有返回值的方法
--eg.
    fun getTag(): String {
    return TAG
    }


d.有参数的方法
--$操作符暂时不讲
--eg.
    fun getTag(str: String): String {
        return "TAG:$str"
    }

e.返回值可能为null的方法
--eg.
    fun getTag(str: String): String? {
        return null
    }
上一篇 下一篇

猜你喜欢

热点阅读