Kotlin高阶函数

高阶函数(高阶函数)是一个接受函数作为参数或返回函数或可以同时执行这两个函数的函数。 意味着,可以将函数作为参数传递给其他函数,而不是将IntString或其他类型作为参数传递给函数。

看看以下示例:

fun myFun(org: String,portal: String, fn: (String,String) -> String): Unit {  
    val result = fn(org,portal)  
    println(result)  
}

在上面的例子中,使用三个参数定义了一个函数myFun()。 第一个和第二个参数取String,第三个参数是有两个String类型参数的函数。 参数String -> String 类型表示函数将String作为输入并将输出作为字符串类型返回。

要调用上面的函数,可以传递函数文字或lambda。 例如:

fun myFun(org: String,portal: String, fn: (String,String) -> String): Unit {  
    val result = fn(org,portal)  
    println(result)  
}  

fun main(args: Array<String>){  
    val fn:(String,String)->String={org,portal->"$org develop $portal"}  
    myFun("zyiz.org","zyiz.net",fn)  
}

执行上面示例代码,得到以下结果 -

zyiz.org develop zyiz.net

上面的高阶函数也可以用另一种方式调用,如下面提到的main()函数中的代码:

myFun("zyiz.org","zyiz.net",{org,portal->"$org develop $portal"})

上一篇:Kotlin Lambda函数

下一篇:Kotlin内联函数

关注微信小程序
程序员编程王-随时随地学编程

扫描二维码
程序员编程王

扫一扫关注最新编程教程