# Scala 遞歸函數
遞歸函數在函數式編程的語言中起著重要的作用。
Scala 同樣支持遞歸函數。
遞歸函數意味著函數可以調用它本身。
以上實例使用遞歸函數來計算階乘:
```
object Test {
def main(args: Array[String]) {
for (i <- 1 to 10)
println(i + " 的階乘為: = " + factorial(i) )
}
def factorial(n: BigInt): BigInt = {
if (n <= 1)
1
else
n * factorial(n - 1)
}
}
```
執行以上代碼,輸出結果為:
```
$ scalac Test.scala
$ scala Test
1 的階乘為: = 1
2 的階乘為: = 2
3 的階乘為: = 6
4 的階乘為: = 24
5 的階乘為: = 120
6 的階乘為: = 720
7 的階乘為: = 5040
8 的階乘為: = 40320
9 的階乘為: = 362880
10 的階乘為: = 3628800
```
- Scala 教程
- Scala 簡介
- Scala 安裝
- Scala 基礎語法
- Scala 數據類型
- Scala 變量
- Scala 訪問修飾符
- Scala 運算符
- Scala IF...ELSE 語句
- Scala 循環
- Scala while 循環
- Scala do...while 循環
- Scala do...while 循環
- Scala break 語句
- Scala 函數
- Scala 函數傳名調用(call-by-name)
- Scala 指定函數參數名
- Scala 函數 - 可變參數
- Scala 遞歸函數
- Scala 高階函數
- Scala 函數嵌套
- Scala 匿名函數
- Scala 偏應用函數
- Scala 函數柯里化(Currying)
- Scala 閉包
- Scala 字符串
- Scala 數組
- Scala Collection
- Scala List(列表)
- Scala Set(集合)
- Scala Map(映射)
- Scala 元組
- Scala Option(選項)
- Scala Iterator(迭代器)
- Scala 類和對象
- Scala Trait(特征)
- Scala 模式匹配
- Scala 正則表達式
- Scala 異常處理
- Scala 提取器(Extractor)
- Scala 文件 I/O