java中的%运算符是什么?

时间:2017-05-15 09:27:39

标签: java

public static int sumDigits (int n) {
  if(n < 10)
    return n;
  else
    return n%10 + sumDigits (n/10);
}

此方法用于递归计算数字中的数字之和,但我不明白? n%10 ???的目的是什么?

4 个答案:

答案 0 :(得分:2)

n%10通过计算将数字除以10的余数,为n提供最低位数。

因此,该方法返回最低有效数字和n/10(除了最低有效数字之外包含n的所有数字的数字之和的数字之和)。

答案 1 :(得分:2)

n%10表示10的模数。这用于获取最后一位数字。

我们说你的号码是12345

12345 % 10表示12345除以10时的余数,即5

此后,当您执行(n/10)时,您会获得1234(除了您在上一步中获得的最低有效数字之外的所有数字)。

答案 2 :(得分:0)

%是模数,因此在n mod 10中,它返回n / 10之后的余数。

如果n为1到10,则当n为10时,它将返回1到9和0。

答案 3 :(得分:0)

n%10表示模数为10,即除以10得到的余数。这里用来得到每个数字。

示例:

说你的号码是n = 752。

n%10 = 2,n / 10 = 75

所以你在sumDigits(75)

中添加2

现在,n%10 = 75%10 = 5.这是要添加的数字,依此类推,直至n >= 10。当它为< 10时,您只需要按原样返回一个数字,因为这只是该单位数字n中的数字之和。