2

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

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

1 回答 1

7

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

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

因为3.0是浮点数,所以结果也是浮点数。

于 2014-05-17T21:49:30.597 回答