fun main() {
//声明数组变量list,加入数组成员1,2,3,4,5
var list = listOf<Int>(1, 2, 3, 4, 5)
//声明Int类型变量1
//声明Int类型变量l2,值等于LIST数组拓展的方法simbaSum,并将函数simbaJia作为参数传递进去
val l2 = list.simbaSum { simbaJia( it) }
println(l2)
}
//声明函数simbaJia,准备作为参数传给拓展方法使用
fun simbaJia(i:Int){
when(i){
1 -> println ("这个是1")
2 -> println ("这个是2")
3 -> println ("这个是3")
4 -> println ("这个是4")
5 -> println ("这个是5")
}
}
/**
* 高阶函数——函数作为参数.
* 给List<Int>扩展simbaSum方法,参数为函数callback,该方法需要一个Int类型的参数
*/
fun List<Int>.simbaSum(callback: (Int) -> Unit): Int {
var result = 0
for (v in this) {
result += v
callback(v)
}
return result
}
Kotlin高阶函数,将函数作为参数使用
最新推荐文章于 2025-04-10 17:53:35 发布