Kotlin 的?和!!

Kotlin有针对Java的NullPointerException管理,kotlin开发中也会有很多!!出现,对于初学者来说肯定很糊涂。

  • ? 表示当前对象可以为空,即可以 = null
  • !! 表示当前对象不为空的情况下执行
	/**
     * name 可以为空,即name = null;
     * 因为name有为空的可能性,所以people使用name时,需要在name后加!!,
     * 代表name不为空时执行代码,如果为空,仍会报错;
     */
    var name: String? = ""
    var people: String = name!!

	//一个小知识点,当列表为空时赋值0
    val nameList:MutableList<String>? = null
    val size = nameList?.size ?: 0

参考文章:https://www.jianshu.com/p/51b2e5aa3dd8

你可能感兴趣的:(android)