Kotlin学习之类型系统

1.问号可以加在任何类型的后面来表示这个类型的变量可以存储null引用eg:string?,没有问号则代表不能存储null引用

2.安全运算符“?.”,eg:S?.Bar(),如果s为空则返回null,否则调用bar

3.Elvis运算符:“?:”,也叫null合并运算符,s?:"",如果s为null则返回"".

4.安全转换as?,,,eg:foo as rype,,,如果能转换则转换,不能则返回null

5.非空断言:“!!”。foo!!,如果这么声明则表示foo不能为null,否则会报异常。

6.email.let{},只有email不为null时才会调用

7.延迟初始化的属性:lateinit

8.判空:String.isEmptyOrNull()

9.Kotlin中所有的泛型类和泛型函数得类型参数默认都是可空得,如果要使类型参数非空,必须为他指定一个非空的上界any。

10.Kotlin可以识别很多种注解,包括jiava中的很多注解

11.java中的类型再Kotlin中表示为平台类型,可空可不空,所以我们要判断

12.Kotlin不会自动得把数字从一个类型转成另外一个类型,必须自己手动处理

13.Any类似于jiava中的object,是非空类型,可空表示为Any?

14.unit和java中的void类似,但是如果声明了unit,那么可以不显示的返回null

15.String.toIntOrnull().不能转化的时候会自动返回null

16.便利集合并去掉其中的null,filterNotNull

17.collection只读,MutableCollection可修改

你可能感兴趣的:(Kotlin学习之类型系统)