2
我有一个小麻烦了解的Scala代码以下几件背后的基本原理添加一个诠释为String。在斯卡拉
scala> 1 + 1
res0: Int = 2
如果我输入“Abc”+“Def”,我应该在REPL中得到“AbcDef”。
scala> "Abc" + "Def"
res6: java.lang.String = AbcDef
现在,让我们说,我援引的字符串“ABC”的+法,并通过“DEF”作为参数:
scala> "Abc".+("Def")
res7: java.lang.String = AbcDef
通过同样的理由,为什么像1 +(1 )返回一个双2.0?
scala> 1.+(1)
res1: Double = 2.0
另外,为什么不通过参数“1”作为参数,结果“1.01”如下:
scala> 1.+("1")
res9: String = 1.01
为什么是返回结果的字符串,而不是努力的为“1”把我转换成来电类型?
感谢