1.规范化写法,scala 函数的返回值是最后一行代码;
def addInt(a:Int,b:Int) : Int = {
var sum : Int = a + b
sum
}
Unit,是Scala语言中数据类型的一种,表示无值,相当于java中的Void,用作不返回任何结果的方法;
def returnUnit(): Unit = {
println("nothing!")
}
2.不写明返回值的类型,scala会自行判断,最后一行代码的执行结果为返回值。比如传入的a和b的值都是Int型,那么返回值类型也是Int
def addInt(a:Int,b:Int) = {
a+b
}
比如传入的a和b的值都是Int型,那么返回值类型也是Int
等价于:
def addInt(a:Int,b:Int):Int = {
a+b
}
3.省略返回值类型和等于号,返回的是(),表示空;
def addInt(a:Int,b:Int){
a+b
}
4.函数只有一行的写法,虽然看似省略了很多,但是scala解释器后台会自动识别添加
def addInt (a:Int,b:Int) = a + b
5.最简单写法:匿名函数,直接赋值给变量。此方法在spark编程中经常使用。
val addInt = (x: Int,y: Int) => x + y
表示定义函数 addInt ,输入参数有两个分别为x,y,且均为Int类型,返回值为两者的和,类型为Int