1.递归方法:
1).函数可以自己调用自己--------->递归函数 需要明确写出返回值类型 2).自己调用自己,可能会导致死循环 3).应用场景:适用与解决可以被分解为子问题的问题,大事化小! 例如:
def fn(): Unit = { println("帅哥") //在函数内部再次调用自己 fn() }
问题:求1+2+3+4+....+(n-1)+n 1.基本情况(直接能求):f(1) = 1 2.递归情况(大事化小,自己调用自己):f(n) = f(n-1)+n def getSum(n: Int): Int = { if (n == 1) { 1 } else { //n>1 getSum(n - 1) + n } }