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」把我轉換成來電類型?
感謝