标签:特殊 val Kotlin Nothing 类型 null Any Unit
Kotlin特殊类型包含:
- Unit 类型
- Nothing 和 Nothing? 类型
- Any 和 Any? 类型
Unit 类型
Kotlin中的 Unit
类型 实现了Java中的void同样的功能。
当一个函数没有返回值的时候,使用 Unit
来表示这个特质;Unit
父类型是 Any
, Unit?
父类型是 Any?
.
Nothing 和 Nothing? 类型
如果一个函数的返回值是 Nothing
,这意味着这个函数永远不会有返回值。Nothing
可以用来表示一个不存在的返回值,如抛出异常。
Unit
表示返回的数据类型是Unit
类型;Nothing
表示永远不会有返回。
Nothing?
类型数据的值只能是 null
.
Any 和 Any? 类型
Any
是非空类型层次的根;Any?
是可空类型层次的根;
Any?
是Kotlin类型层次结构的最顶端
;Any?
是 Any
的父类型。
fun testAnyF(): Unit {
val a = 1 is Any // Int类型的 1 是 Any类型
println(a) // true
val b = 1 is Any? // Int类型的 1 是 Any?类型
println(b) // true
val c = null is Any // null 不是 Any类型
println(c) // false
val d = null is Any? // null 是 Any? 类型
println(d) // true
val e = Any() is Any? // Any() 是 Any? 类型
println(e) // true
}
标签:特殊,val,Kotlin,Nothing,类型,null,Any,Unit 来源: https://blog.csdn.net/flyingyajun/article/details/121374329
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。