Kotlin 语言学习(4) - 数据类、类委托 及 object 关键字
Kotlin 语言学习(5) - lambda 表达式和成员引用
一、本文概要
二、可空性
2.1 可空类型
当我们在声明方法时,如果允许在这个方法被调用的时候传给它null
的实参,则需要显示地 在类型名称后面加上问号来标记它:
问号可以加在任何类型的后面来表示这个类型的变量可以存储null
引用,而所有 常见类型默认都是非空的,除非显示地把它标记为可空。
当你有一个可空类型的值,对它的操作也会受到限制:
- 不能调用它的方法
- 不能把它赋值给非空类型的变量
- 不能把可空类型的值传给拥有非空类型参数的函数
针对上面的第一点,最重要的操作就是和null
进行比较,一旦进行了比较操作,编译器就会记住,并且在这次比较发生的作用域内把这个值当做非空来对待,然后才可以 调用它的方法,下面是最容易理解的做法,后面我们将会看到更加简洁的实现:
2.2 类型的含义
类型