我该如何处理非负模型?

var*_*tis 6 java modulo

当我在Java程序中使用运算符%时,我不断得到否定答案.示例:-1%100给出-1.虽然这在数学上是正确的,但我想得到正常的数学解,或99.换句话说,我想得到最小的正整数解.在Java中是否有任何简单的解决方案(也许我在数学中忽略了什么? - 我找不到它)?

我还想澄清一下,如果API中有一些东西可以做到这一点,那么链接就会很棒.

Mys*_*ial 3

你就可以这样做吗?

int d = 100;

int x = -1 % d;
if (x < 0)
    x += d;
Run Code Online (Sandbox Code Playgroud)

这应该对任何积极的事情都有效d。

  • 我不知道有这个 API,因为它看起来有点微不足道。 (4认同)
  • 模数将返回不小于-99。因此,只需要一个回加即可。 (2认同)