# Scala 匿名函數
Scala 中定義匿名函數的語法很簡單,箭頭左邊是參數列表,右邊是函數體,參數的類型是可省略的,Scala 的類型推測系統會推測出參數的類型。使用匿名函數后,我們的代碼變得更簡潔了。
下面的表達式就定義了一個接受一個Int類型輸入參數的匿名函數:
```
var inc = (x:Int) => x+1
```
上述定義的匿名函數,其實是下面這種寫法的簡寫:
```
def add2 = new Function1[Int,Int]{
def apply(x:Int):Int = x+1;
}
```
以上實例的 inc 現在可作為一個函數,使用方式如下:
```
var x = inc(7)-1
```
同樣我們可以在匿名函數中定義多個參數:
```
var mul = (x: Int, y: Int) => x*y
```
mul 現在可作為一個函數,使用方式如下:
```
println(mul(3, 4))
```
我們也可以不給匿名函數設置參數,如下所示:
```
var userDir = () => { System.getProperty("user.dir") }
```
userDir 現在可作為一個函數,使用方式如下:
```
println( userDir )
```
- 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