0.Scala中严格区分方法和函数。
1.方法的定义
1.1标准形式:
def 方法名(参数列表):返回值类型 = {方法体}
1.2有隐式转换,自动推断,可省返回值类型:
def 方法名(参数列表) = {方法体}
如果是递归,必须指定返回值类型
1.3无论有无返回值类型都可省略return:
def sum(a:Int,b:Int):Int = {a + b}
若完全不使用返回,最后一句最好是打印
1.4无参数简化
def sum2() = println("求和")
def sum3 = println("求和")
2.方法的调用
方法名(参数列表)
val res = sum(1,2)
无参数使小括号可以省略
3.递归(斐波那契数列)
def fab(n:Int):Int = {
if((n == 1) || (n == 2)) 1
else fab(n-1)+fab(n-2)
}