斯卡拉 - 隐式类型转换
问题描述:
可能重复:
How can implicits with multiple inputs be used in Scala?斯卡拉 - 隐式类型转换
我明白,如果我们用Scala编写
implicit def str2int(str:String):Int = Integer.parseInt(str)
def addTwo(a:Int, b:Int) = a + b
addTwo("123", 456)
我们从字符串参数转换到诠释。什么将下面做的,什么是用法:
implicit def convert(a: Int, b: Int): String = a + "," + b
这是一个有效的声明,我根本不知道是什么用途可能是,从事实,我还是不太得到整个未来隐含会话的概念...
答
隐式转换尝试将不适合方法调用的类型转换为拟合类型,而不显示它。
addTwo("123", 456)
被internaly转换为:
addtwo(str2int("123"), 456)
对于一个详细的介绍我sugest你的Programming in Scala第13章。
+0
不是我问的完全 – Bober02 2012-08-16 12:02:33
+0
原谅我,如果我没有得到你的问题的权利。你能详细解释一下吗?我会加我的答案。 – 2012-08-16 12:12:51
http://stackoverflow.com/questions/10935232/scala-implicit-method-with-multiple-arguments – Owen 2012-08-16 11:42:03