1.高阶函数
定义:一个函数接收另一个函数作为参数,或者返回值的类型是另一个函数,那么该函数就称为高阶函数。
基本格式如下:
fun example(func:(String,Int)->Unit){
func("holle",123)
}
例子:
fun plus(num1: Int, num2: Int) = num1 + num2
fun minus(num1: Int, num2: Int) = num1 - num2
fun num1AndNum2(num1: Int, num2: Int, operation: (Int, Int) -> Int) {
operation(num1,num2)
}
//调用方式
num1AndNum2(2,1,::plus)
num1AndNum2(2,1,::minus)
lambda调用方式:
num1AndNum2(2,1){
n1,n2->n1+n2
}
2.内联函数
将上述高阶函数转化成java如下:
//转化成java,通过创建类的实力并调用里面的方法
public static int num1AndNum2(int num1,in

本文探讨了Kotlin中的高阶函数概念,它接受函数作为参数或返回函数。通过示例展示了高阶函数的基本使用,并指出其在Java中的实现原理。接着,文章深入讨论了内联函数,解释了内联如何减少运行时内存开销,并说明了noinline、return在内联函数中的特殊行为。
订阅专栏 解锁全文
990





