鉴于高阶函数在程序设计中高频率的使用,今天对高阶函数进行一个初步的认识o( ̄︶ ̄)o
本节目录:
- 什么是函数,函数的构成部分
- 什么是高阶函数,高阶函数的特点
- 如何定义一个高阶函数
- 怎样使用一个高阶函数
1.什么是函数
(1)函数的定义
函数是组织好的,可重复使用的,用来实现单一或相关联功能的代码段。函数能提高应用的模块性,和代码的重复利用率。
举个栗子:
好比我们的小学数学,1+2+3+4+5=15当然我们可以一步步加起来求和,但是我们也可以用公式,(1+5)*5/2=15,这个公式使得我们的计算简便起来,就如同函数在程序中的作用,将功能模块化,每个函数都有其特定的实现功能,减少其对应的代码量。
(2)函数的构成部分
以下是一个普通函数的定义加实现
fun functionName ( a : Int , b: String) : Unit{
println(" Hello World!")
}
- fun: 为定义函数的关键字
- functionName : 为你所定义的函数名
- (a : Int , b : String) :()中是函数的参数,包括个数以及参数类型,a和b就是定义参数时的名称,Int 和 String 是参数的类型
- :Unit :是函数的返回类型
2.什么是高阶函数
高阶函数的构成与普通函数相同,其最大的特点就是以函数为参数
fun method01(){} //定义一个普通函数
fun method02( a : method01){}//高阶函数以函数为参数
在高阶函数运行时,会进行一个回调,method02()运行时会去先行运行method01(),完成函数method01()的操作后再继续进行method02()。
3.怎样定义一个高阶函数
fun method03(age:Int, judge:(Boolean,String)->Unit){
judge(true,"jack")
}
//method04()的参数正是method03高阶函数所需要的函数参数
val method04:( Boolean , String)-> Unit={
isBoy,name ->
println("$name ${if (isBoy) "boy" else "girl"}" )
}
//调用高阶函数
method03(20,method04)
运行:
4.怎样使用一个高阶函数
最基本的规律如下:当想要定义的函数需要一系列的程序设计,并且在运行过程中需要其他的函数的调用同时进行时,高阶函数便需要出现了