在Scala中使用下划线
下划线(_)字符在Scala中保留,并且在编程语言中有多种用法。基于使用下划线的函数具有以下用法:
1)存在类型
这些类型是抽象数据类型的方法,
def functn(l: List[Option[_]]) = { }
2)更高种类的参数
更高类型的类型是一个包含类型构造函数本身的构造函数。
class incl [u[ _ ]]
3)忽略变量
被忽略的变量使用_声明。例如,
val _ = 67
4)忽略自我类型的名称
融合两个特质而不互相延伸是自我类型。程序员可以使用忽略的名称代替自身类型的名称。
trait incl { _: seq[_] => }
5)通配符模式
在模式匹配中,通配符模式用于匹配不匹配的大小写。
case (_) : //code
6)通配符导入
要导入包的所有类,请使用通配符导入。
import java.util._
7)加入运算符来信
示例,
def fn_! (x : float) = 5
8)赋值运算符
赋值运算符是将值分配给给定变量/方法的运算符。例如,
def include_ = { ... }
9)占位符语法
占位符是一个匿名函数。
list (a, b, c) map(_+c)
10)方法值
如果方法返回单个值并且程序直接使用它,则可以使用_代替其名称。例如,遍历列表,
list (a, b, c) foreach println _
11)默认初始化
不使用值的变量初始化使用下划线_完成。例如,
var a : Int = _ // 值为0,即默认值。
12)隐藏import
您可以使用通配符_来隐藏scala方法的导入。
import java.util.{ArrayList => _, _}