Kotlin高阶函数的使用

高阶函数定义

lambda表达式

  • 定义:Lambda 表达式是 JDK8 的一个新特性,可以取代大部分的匿名内部类,写出更优雅的 Java 代码,尤其在集合的遍历和其他集合操作中,可以极大地优化代码结构。

  • 语法形式为 () -> {},其中 () 用来描述参数列表,{} 用来描述方法体,-> 为 lambda运算符 ,读作(goes to)

函数类型 (String,Int)->Unit

  • 高阶函数定义:参数类型是函数类型,或者返回值是函数类型的函数称为高阶函数
    fun gaojie(name1: Int, name2: Int, operation: (Int, Int) -> Int): Int {
        return operation(name1, name2)
    }

高阶函数的调用

   fun gaojie(name1: Int, name2: Int, operation: (Int, Int) -> Int): Int {
        return operation(name1, name2)
    }

    fun add(name1: Int, name2: Int): Int {
        return name1 + name2
    }

    fun minus(name1: Int, name2: Int): Int {
        return name1 - name2
    }
    
  • 调用方法1
 val name = gaojie(name1, name2, ::add)

  • 调用方法2
 gaojie(name1, name2, fun(name1: Int, name2: Int): Int {
            return name1 + name2
        })

  • 调用方法3,使用高阶函数
 gaojie(name1,name2){ a,b ->
            a+b
        }

高阶函数的应用

你可能感兴趣的:(Android开发的那些事)