欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

Kotlin中函数扩展与属性扩展和非空类型扩展

时间:2023-07-06

val myStr: String = "AAA"//扩展属性val String.myInfo: String get() = "yuknight"fun String.showPrintln(): String { println("打印输出,并链式调用,内容是:$this") return this}val String.strValue: String get() = "当前${System.currentTimeMillis()},调用一次,值是:$this,长度是$length"//对 String?==可空类型的进行函数扩展fun String?.outputStrValueF(defaultValue:String) = println(this ?: defaultValue)fun String?.outputStrValueFget(defaultValue: String) = if (this == null) defaultValue else thisfun main(){ val str:String = "ABC" println(str.myInfo) //扩展函数 str.showPrintln().showPrintln().showPrintln() //扩展属性 str.myInfo.showPrintln().showPrintln() "yuknight".strValue.showPrintln().showPrintln() val infoValue:String? = null //infoValue是可空类型 String String?==可空类型 infoValue.outputStrValueF("默认值1") val name = "yuknight" name.outputStrValueFget("默认值2") println(infoValue.outputStrValueFget("默认值3")) println(name.outputStrValueFget("默认值4"))}

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。