在Kotlin中,我看到函数a.mod(n)
,如果a
为负,结果为负.这不是模应该做的.我该怎么做才能始终保持正模?
For example:
(-2).mod(9)
returns -2
and should be 7
.
在Kotlin中,我看到函数a.mod(n)
,如果a
为负,结果为负.这不是模应该做的.我该怎么做才能始终保持正模?
For example:
(-2).mod(9)
returns -2
and should be 7
.
在kotlin 1.1版本中,mod
被弃用,因为它计算除法的剩余部分,可以是负数.这就是为什么他们改为rem
,更类似于它的功能名称.如果您想在Kotlin和大多数语言中使用模函数,可以使用以下方法:
r = (a).rem(n)
if (r < 0) r += n