0
点赞
收藏
分享

微信扫一扫

scala快速入门系列【函数】


        本篇作为scala快速入门系列的第十篇博客,小菌为大家带来的是关于​函数​的相关内容。

scala快速入门系列【函数】_云计算/大数据


文章目录

  • ​​函数​​
  • ​​定义函数​​
  • ​​方法和函数的区别​​
  • ​​方法转换为函数​​


函数

        scala支持函数式编程,将来编写Spark/Flink程序中,会大量经常使用到函数。

定义函数

语法

scala快速入门系列【函数】_云计算/大数据_02

[!TIP]

  • 函数是一个对象(变量)
  • 类似于方法,函数也有输入函数和返回值
  • 函数定义不需要使用​​def​​定义
  • 无需指定返回值类型

示例

1.调用一个两个数值相加的函数

2.调用该函数

参考代码

scala快速入门系列【函数】_hadoop_03

        看到这里大家一定觉得这跟上一篇讲到的scala的​​方法​​基本没什么区别。别急,接下来就大家进行讲解。

scala快速入门系列【函数】_hadoop_04

方法和函数的区别

  • 方法是隶属于类或者对象的,在运行时,它是加载到JVM的方法区中
  • 可以将函数对象赋值给一个变量,在运行时,它是加载到JVM的堆内存中
  • 函数是一个对象,继承自FunctionN,函数对象有apply,curried,toString,tupled这些方 法。方法则没有。

示例

方法无法赋值给变量

scala快速入门系列【函数】_spark_05

方法转换为函数

  • 有时候需要将​​方法转换为函数​​,作为变量传递,就需要将方法转换为函数
  • 使用​​_​​ 即可将方法转换为函数

示例

  1. 定义一个方法用来进行两个数相加
  2. 将该方法转换为一个函数,赋值给变量

参考代码

scala快速入门系列【函数】_函数_06

本篇博客到这里就结束了,感兴趣的小伙伴们可以持续关注哟~下一篇将为大家带来​​数组​​的基本使用,敬请期待!

scala快速入门系列【函数】_云计算/大数据_07



举报

相关推荐

0 条评论