语法
val 函数变量名 = (参数名:参数类型,参数名:参数类型...) => 函数体
注:
- 在Scala中, 函数是一个对象(变量)
- 类似于方法,函数也有参数列表和返回值
- 函数定义不需要使用def定义
- 无需指定返回值类型
示例:定义一个计算两个整数和的函数,并调用该函数
//定义函数
val getSum = (a:Int,b:Int) => a+b;
//调用getSum
var sum= getSum(1,2);
println(sum);
方法和函数的区别
在Java中,方法和函数没有任何区别,知识叫法不同:
- 方法是隶属于类或对象的,在运行时,它是加载到JVM的方法区中
- 可以将函数对象赋值给一个变量,在运行时,它是加载到JVM的堆内存中
- 函数是一个对象,继承自FunctionN,函数对象有apply、curried、toString、tupled方法,方法则没有