x的平方加y平加xy的java语言_面试被虐题:说说 JVM 系语言的函数式编程

原标题:面试被虐题:说说 JVM 系语言的函数式编程

d3c57473ea6d4c9aeb6b149ca3a395a6.png

Java中的函数式编程

函数式编程在上世纪五十年代就有了,只不过在工业界一直不温不火,最近十年才被广泛认知。其理论基础也并非为编程而设计,而是一种数学抽象(Lamda演算),其实初中就学过了,λ表达式。

在 JS(建议把 JS 作为函数式编程思想学习的入门语言,Java 的实现略显臃肿,可能不太便于理解)当中,函数式编程算是应用比较多的了。各现代高级编程语言,都或多或少地支持了函数式编程。

一些基本特点总结:

相比平常的指令式编程,函数式编程更在乎执行结果而非过程;

函数是一等公民,可以像普通的数值、引用等变量一样赋值、作为参数传递、作为返回值;

函数是纯函数,即函数不能产生副作用,如不能修改全局变量等,固定的输入就映射固定的输出。

简单示意一下,不代表任何语言,因为不同语言在实现方式上有差异,但核心思想不变:

1//定义一个函数g,并赋值给f

2f=g(x,y)=x+y

3//写一个方法,函数作为参数传递

4printF(g){

5print(g(1,2))

6}

7//调用方法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值