1.方法轉函數
def f = ...
val f1 = f _
2.部分應用函數
val square= math.pow(_, 2)
3.函數隱式參數
List(1,2,3).map(_*_)
4.初始化成員屬性
class A{
var a:Int= _
}
5.導包引入時
import scala.collection.JavaConversions._
import java.util.{ArrayList => _, _}
6.元組元素的前綴
Map((1,2),(2,3)).map(kv=>(kv._1*2,kv._2))
7.元組元素的前綴
Map((1,2),(2,3)).map(kv=>(kv._1*2,kv._2))
8.模式匹配
case _ =>
case a: List[_]=>
case Some(_) =>
"abc" match { case s"a$_c" => }
List(1,2,3,4,5) match { case List(1,2,rest@_*) => }
8.匿名自身類型
trait MySeq { _: Seq[_] => }
9.集合類型匹配
val Array(a, b, rest@_*) = foo()
def foo1() = Array(1, 2, 3, 4, 5)
10.分解集合
List(1 to 100: _*)
11.命名隔開字符和操作符
val name_= = 1
def unary_! : Int = -n