Scala 中下划线 _ 的用法总结
Posted 做人要厚道2013
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Scala 中下划线 _ 的用法总结相关的知识,希望对你有一定的参考价值。
_
(下划线)这个字符在 Scala 中似乎无处不在,到目前为止,它可能是 Scala 中使用最广泛的符号。
使用场景清单:
-
作为包引入的通配符
-
作为元组索引的前缀.
val names: (String, String) = ("lisi", "zs")
names._1
names._2
- 作为函数值的隐式参数
println(list.map(_ * 2))
// 等价于
println(list.map(ele => ele * 2))
-
利用默认值初始化字段
-
用于在函数名中混合操作符
Scala 不允许直接使用字母和数字字 符的操作符。例如,foo:
是不允许的,但是可以通过使用下划线来绕过这个限制, 如foo_:
// 错误
def foo:(a : Int) =
// 正确
def foo_:(a :Int)
-
在模式匹配时作为通配符.
-
在处理异常时, 在
catch
在代码块中和case
联用 -
作为分解操作的一部分. 例如,
max(arg: _*)
在将数组或者列表参数传递给接受可变长度参数的函数前,将其分解为离散的值。 -
用于部分应用一个函数。例如,在代码片段
val square = Math.pow(_: Int, 2)
中,我们部分应用了pow()
方法来创建了一个square()
函数。
以上是关于Scala 中下划线 _ 的用法总结的主要内容,如果未能解决你的问题,请参考以下文章