手机网站友情链接怎么做,如何查询网站接入商,辽宁建筑工程网,网页版qq邮箱登陆登录入口标准函数
with
第一个参数是一个类型或者对象#xff0c;第二个参数是lambda表达式。其中第一个参数为第二个参数提供上下文#xff0c;返回值是最后一行。案例代码#xff1a;
fun main() {val list mutableListOfString()var ret with(list) {add(1第二个参数是lambda表达式。其中第一个参数为第二个参数提供上下文返回值是最后一行。案例代码
fun main() {val list mutableListOfString()var ret with(list) {add(1)remove(1)toString()}println(ret)
}
run
只有一个参数是lambda表达式。返回值是最后一行且它需要一个对象去调用
fun main() {var ret mutableListOfString().run {add(1)add(2)remove(1)toString()}println(ret)
}
apply
和run类似但是无法指定返回值。默认返回的是调用对象本身
fun main() {var ret mutableListOfString().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下。