# 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