Scala操作者奇怪
发布时间:2020-12-16 09:23:03 所属栏目:安全 来源:网络整理
导读:当我调用2时,我得到一个Int回来,但是当它完成使用显式方法调用我得到Double代替. scala 2+2res1: Int = 4scala 2.+(2)res2: Double = 4.0 看起来 . ()在隐式转换的Int到Double上被调用. scala 2.+console:16: error: ambiguous reference to overloaded defi
当我调用2时,我得到一个Int回来,但是当它完成使用显式方法调用我得到Double代替.
scala> 2+2 res1: Int = 4 scala> 2.+(2) res2: Double = 4.0 看起来 . ()在隐式转换的Int到Double上被调用. scala> 2.+ <console>:16: error: ambiguous reference to overloaded definition,both method + in class Double of type (x: Char)Double and method + in class Double of type (x: Short)Double match expected type ? 2.+ ^ 为什么 ? 解决方法
原因不在于显式方法调用 – 通过写入2.您在左侧指定Double,然后调用add操作符:
scala> 2. res0: Double = 2.0 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |