Kotlin高阶函数定义模板

Kotlin高阶函数

高阶函数定义格式示例1:

/**
 * 高阶函数
 * 此高阶函数接收两个参数,第一个参数是String类,第二个参数是接收String值且返回值为Int的函数。整体返回值是Int类型
 */
private fun fun3(str:String,mapper:(String) -> Int):Int{
    return mapper(str)
}

上面的高阶函数思想是:
此高阶函数接收两个参数,第一个参数是String类,第二个参数是接收String值且返回值为Int的函数。整体返回值是Int类型

高阶函数的调用:
val value2 = fun3("Android") { input -> input.length } //输入字符串,返回字符串长度
val value3 = fun3("Android") { input -> input.lastIndex } //输入字符串,返回字符串最后一个字符位置

高阶函数定义格式示例2:

/**
 * 高阶函数
 * 此高阶函数接收两个参数,第一个参数是String类,第二个参数是接收String值且返回值为String的函数。整体返回值是String类型
 */
private fun fun4(str: String,highmethod:(String) -> String):String{
    return highmethod(str)
}

上面的高阶函数思想是:
此高阶函数接收两个参数,第一个参数是String类,第二个参数是接收String值且返回值为String的函数。整体返回值是String类型

高阶函数的调用:
val value4 = fun4("Android") { input -> input.toUpperCase() } //输入字符串,然后把字符串转换为大写

高阶函数定义格式示例3:

/**
 * 高级函数定义
 * 此高阶函数接收三个参数,第一、二个参数是Int类型,第三个参数是接收两个Int值返回值类型为Int的函数。整体返回值是Int类型
 */
private fun fun5(value1: Int,value2: Int,highmethod:(Int,Int) -> Int):Int{
    return highmethod(value1,value2)
}

上面的高阶函数思想是:
此高阶函数接收三个参数,第一、二个参数是Int类型,第三个参数是接收两个Int值返回值类型为Int的函数。整体返回值是Int类型

高阶函数的调用:
val value5 = fun5(800,5000) { input1,input2 -> input1.plus(input2) } //输入两个Int类型的值,返回两个值之和

上面几次调用的结果:
在这里插入图片描述

ps:本文仅用作笔记记录

你可能感兴趣的:(Kotlin,Kotlin学习笔记,Kotlin,高阶函数,高阶函数模板)