本文主要是介绍Kotlin标准函数和静态方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
标准函数
with
第一个参数是一个类型或者对象,第二个参数是lambda表达式。其中第一个参数为第二个参数提供上下文,返回值是最后一行。案例代码:
fun main() {val list = mutableListOf<String>()var ret = with(list) {add("1")remove("1")toString()}println(ret)
}
run
只有一个参数,是lambda表达式。返回值是最后一行,且它需要一个对象去调用:
fun main() {var ret = mutableListOf<String>().run {add("1")add("2")remove("1")toString()}println(ret)
}
apply
和run类似,但是无法指定返回值。默认返回的是调用对象本身:
fun main() {var ret = mutableListOf<String>().apply {add("1")add("2")remove("1")}println(ret.toString())
}
静态方法
单例类/companion object
Kotlin本身没有static关键字来支持静态函数,但是它本身有单例类的特性可以支持类似静态函数的功能。但是若想只把某个类的某个函数声明为静态函数的话,就需要加上companion object:
class A{fun bb(){println("bb")}companion object{fun aa(){println("aa")}}
}
fun test(){A.aa()
}
fun main() {test()
}
注解(@JvmStatic)
class A{fun bb(){println("bb")}companion object{@JvmStaticfun aa(){println("aa")}}
}
fun test(){A.aa()
}
fun main() {test()
}
注解只能用在单例类和companion object下。
这篇关于Kotlin标准函数和静态方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!