//一般定义一个函数可以用以下方式来定义 def myIf(bo:Boolean,fn:(String)=>Unit) = { if(bo) fun("true") } //调用 myIf(true,it=> println(it)) //在scala有传名参数的概念定义如下 def myIf(bo:Boolean) = (fn:(String)=>Unit) => { if(bo) fn("true") } //传名参数的使用方式 第一种 val first = myIf(true) first(println _) 第二种 myIf(true)(println _) //在scala里在只有一个参数时可以使用()也可以使用{} 所以可以使用myIf{}{} myIf()() 或者更像if语句的 myIf(){} myIf(true){value=> println(value) }
因为我也是最近才接触scala语言 这里只说明一下使用方式 因自己理解的也不是很好 不敢说太深怕误导别人