scala函数和方法

方法的定义:
在这里插入图片描述
方法总结:
1.对于只有一行代码的方法体,可以省略{}
2.可以不写返回值类型(定义递归方法时除外,必须带返回值类型,否则不知道返回值类型)
def qiuhe = (x:Int,x:Int) = {x+y}
3.定义的方法若没有返回值,则不用写=号,(若不写=号,即使有返回值也不返回):返回值类型为Unit,其实()是Unit的一个实例对象,如上图标注1
4.若定义的方法,要求有返回值,则定义方法时,必须要有等号,但可以不写返回值类型(定义递归函数除外)
5.若定义的方法没有参数,则调用时,可以直接写参数名而不带括号
6.定义没返回值类型的方法时,可以写上返回值类型:Unit
7.定义的方法即使没有返回值,也可以写等号,编译器会自动推断
8:返回值不用return
9:方法可以没有返回值,也就是Unit

函数的定义及使用:
在这里插入图片描述

函数总结:
1:对于只有单行的函数体,可以省略{}
2:匿名函数往往做为方法的参数被调用;
3:一般会将定义的函数赋值给一个变量(相当于函数起名),后续直接通过这个变量进行调用即可
4:函数可以没有返回值,也就是返回值类型为:Unit

scala中函数和方法的区别:
1.scala中,函数是"头等公民",方法不能直接被方法做为参数进行调用,需要先转换为函数(神奇的下划线,scala中,当方法作为参数被调用时,自动进行了转换:通过_下划线);
2.函数可以作为方法的参数被直接调用
3.二者定义方式不同,方法用def定义,函数没有,可以直接定义匿名函数或者函数赋值给变量,后续用变量名称调用
4.方法定义可以没有参数列表,甚至可以省略(),如 def lol() = 8 或者def lol = 8 ,对函数来说,即使函数没有参数,也要写(),不能省略,如:
val lol2 = ()=>5

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值