高阶函数

fun main(args: Array) {

var add = ::add

var sub = ::sub

println(cacl(10, 20, add))

println(cacl(10, 20, sub))

}

//第三个参数是函数类型,说明kotlin里面的函数可以传递函数参数 

//如果函数里面传递函数参数的话,就称为高阶函数

fun cacl(a: Int, b: Int, block: (a: Int, b: Int) -> Int): Int {

return block.invoke(a, b)

}

fun add(a: Int, b: Int):Int {

return a + b

}

fun sub(a: Int, b: Int):Int {

return a - b

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容