📜  Kotlin高阶函数

📅  最后修改于: 2021-01-05 07:26:19             🧑  作者: Mango

高阶函数

高阶函数(更高层函数)是接受函数作为参数或返回一个函数或者两者兼用的函数。装置,而不是传递中等,字符串,或其它类型的作为参数的函数,我们可以将一个函数在其他函数的参数。

让我们看下面的例子:

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

在上面的示例中,我们定义了带有三个参数的函数myFun()。第一个和第二个参数将String和第三个参数作为从String到String的函数类型。参数String to String type表示函数将字符串作为输入并以字符串类型返回输出。

要调用上述函数,我们可以传递函数字面量或lambda。例如:

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

fun main(args: Array){
    val fn:(String,String)->String={org,portal->"$org develop $portal"}
    myFun("sssit.org","javatpoint.com",fn)
}

输出:

sssit.org develop javatpoint.com

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

myFun("sssit.org","javatpoint.com",{org,portal->"$org develop $portal"})