Scala 中下划线 _ 的用法总结

5 篇文章 0 订阅
1 篇文章 0 订阅

_(下划线)这个字符在 Scala 中似乎无处不在,到目前为止,它可能是 Scala 中使用最广泛的符号。

使用场景清单:

  1. 作为包引入的通配符

  2. 作为元组索引的前缀.

val names: (String, String) = ("lisi", "zs")
names._1
names._2
  1. 作为函数值的隐式参数
println(list.map(_ * 2))
// 等价于
println(list.map(ele => ele * 2))
  1. 利用默认值初始化字段

  2. 用于在函数名中混合操作符
    Scala 不允许直接使用字母和数字字 符的操作符。例如,foo:是不允许的,但是可以通过使用下划线来绕过这个限制, 如 foo_:

// 错误
def foo:(a : Int) = {
}
// 正确
def foo_:(a :Int){
}
  1. 在模式匹配时作为通配符.

  2. 在处理异常时, 在catch在代码块中和case联用

  3. 作为分解操作的一部分. 例如,max(arg: _*)在将数组或者列表参数传递给接受可变长度参数的函数前,将其分解为离散的值。

  4. 用于部分应用一个函数。例如,在代码片段 val square = Math.pow(_: Int, 2)中,我们部分应用了 pow()方法来创建了一个 square()函数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值