这是一个简短的代码:
import scala.language.implicitConversions
implicit def str2int(str:String) = str.toInt
object Container {
def addIt[A](x: A)(implicit str2int: A => Int) = 123 + x
def addIt2(x: String)(implicit str2int: String => Int) = 123 + x
}
println(Container.addIt("123"));
println(Container.addIt2("123"));
两个问题:
- “(隐式str2int:A => Int)”称为视图吗?当您说“视图”时,它表示代码的哪个特定部分?
- 为什么 addIt 返回 246 而 addIt2 返回字符串“123123”?
任何关于这个主题的好资源也将不胜感激。谢谢你。