Scala编程(第5版)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

5.5 算术操作

可以通过加法(+)、减法(-)、乘法(*)、除法(/)和取余数(%)的中缀操作符表示法对任何数值类型调用算术方法。下面是一些示例:

当左右两个操作元都是整数类型(IntLongByteShortChar)时,/操作符会计算出商的整数部分,不包括任何余数。%操作符表示隐含的整数除法操作后的余数。

从浮点数的取余数操作得到的余数与IEEE 754标准定义的不同。IEEE 754标准定义的余数在计算时用的是四舍五入,而不是截断(truncating),因此与整数的取余数操作很不一样。如果你确实需要IEEE 754标准定义的余数,则可以调用scala.mathIEEEremainder,比如:

数值类型还提供了一元的前缀操作符+(方法名为unary_+)和-(方法名为unary_-),用于表示数值字面量是正值还是负值,如-3+4.0。如果你不给出+-,则数值字面量会被当作正值。一元操作符+的存在仅仅是为了和一元的-对应,没有任何作用。一元操作符-还可以被用来对变量取负值。例如: