Kotlin零基础学习 函数和函数表达式

java中的函数就是方法,可是Kotlin中还有函数表达式,函数表达式和函数一样经过一系列计算得到一个结果。

例:一个加法运算

   //函数1
    fun maxAdd(a: Int, b: Int): Int {
        return a + b
    }

    //函数2:如果只有一行代码可以这么写
    fun maxAdd2(a: Int, b: Int): Int = a + b


    fun test() {
        //函数表达式1:
        var i = { x: Int, y: Int -> x + y }
        var result = i(3, 5);
        
        //函数表达式2:
        var i2: (x: Int, y: Int) -> Int = { x, y -> x + y }
        var result2 = i2(3, 5)
    }

这俩面的 函数1 、函数2、函数表达式1、函数表达式2 都是等价的,代表的都是一个意思。

总结

1.如果一个函数里面只有一条语句就可以像函数2一样写
(1)fun (参数1,参数2) :返回类型=函数体

2.函数也可以写成函数表达式 1和2 ,函数表达式有点类似于C的函数指针
(1)变量={参数1,参数2 -> 函数体}
(2)变量:(参数1,参数2)->返回类型=lambda表达式

3.不管是函数表达式还是函数他们的调用方法都是一样的
函数名(参数1,参数2)

你可能感兴趣的:(Kotlin零基础学习 函数和函数表达式)