您的位置:首页 > 其它

scala总结(4) -- 隐式转换以及隐式参数

2015-01-21 11:25 183 查看
隐式转换:
implicit def intToString(i:Int) = i.toString  
implicit def可以对一种类型的参数自动做转换,在上面的隐式转换作用域中,所有Int 如果不符合编译要求,会先被转换为String
不可有多个隐式转换,如再加一个implicit def intToString2(i:Int) = i.toString + “2” 则编译报错
隐式参数:

def speakImplicitly (implicit greeting : String) = println(greeting)


when call speakImplicitly(“test”) 返回 “test”
call speakImplicity 寻找作用域中implicit val String xxx = “xxx”. 必须类型正确并且implicit。 如果没有或是有多于一个,报错。 常用于寻找pageContext类似的东西。
只能找val或def,也就是immutable的
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  scala