Scala中缀类型难题



我知道前缀和中缀是等价的。那么,为什么下面给出了不同类型的答案?

3.*(5)                                        //> res50: Double = 15.0
3*5                                           //> res51: Int(15) = 15

我猜这里发生的事情与中缀和前缀无关。

它几乎可以肯定地将3.*(5)标记为3., *, (, 5, )3.相当于3.0——一个浮点数。因此,它被解析为中缀表达式:3.0, *, 5(在5周围有冗余的父节点)。

由于3.0是浮点数,所以结果也是浮点数

相关内容

  • 没有找到相关文章

最新更新