Scala 函数式编程

本文通过一个具体的Scala代码示例介绍了如何定义和使用高阶函数。首先定义了一个名为m5的方法,该方法接收一个双整型参数的函数并执行传入的函数,接着定义了一个具体的函数f1用于两数相乘,最后展示了如何调用m5方法并传入f1函数。

1、先定义一个方法,如下

def m5(f:(Int,Int)=>Int)=f(4,5)

解释:

定义一个方法名叫m5,入参是一个函数,

f有人叫签名,其实可以理解成Java中的形参的参数,

(Int,Int)=>Int可以理解为Java中形参的类型

f(4,5)是方法体的实现,和Java中方法的实现是一样的

总结:

1)、这个方法的意思是无论传进来什么函数,都用3,4传进去搞。

比如传进来的函数是2个数相除的,那么就执行3/4;

如果传进来的函数是2个数相乘的,那么则3*4;

总之就是我是非常灵活的,无论你传啥进去,我都能搞。

2)、形参中定义的f,既是类Java中的形参参数,同时也可以当作函数名称,在函数体中引用

2、定义一个函数,一会要将这个函数传进去

val f1=(x:Int,y:Int)=>x.*(y)

解释:

这里就是一个列出了函数要具体干的事,就是你传2个数,我把这2个数相乘

3、调用

val r7=m5(f1)
println(r7)

4、打印结果

参考链接

转载于:https://my.oschina.net/windows20/blog/1628061

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值