加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读