Java模数左手操作数小于右手操作数

时间:2014-09-05 08:58:46

标签: java modulus

如果左操作数小于左操作数,java如何计算余数?

public class ModulusTest {

    public static void main(String[] args) {

        int a = 3 , b = 10;

        int modul1 = b%a;
        System.out.println("b modulus a = " + modul1);

        int modul2 = a%b;
        System.out.println("a modulus b = " + modul2);

    }
}

输出:

b modulus a = 1
a modulus b = 3

看起来它只返回左操作数?

2 个答案:

答案 0 :(得分:0)

你的意思是“左操作数”?

3/10的模数为3

0*10 + 3

10/3的模数为1

3*3 + 1

有什么问题?

答案 1 :(得分:0)

如果左操作符小于mod(remainder)操作中的右操作数,则Java语言指定结果将始终是左侧较小的操作数。

因此,

3%10=3 
Java中的

......

所以,你不能反对语言规范!!!