Java - 为什么0%3返回0?

时间:2014-08-06 22:16:08

标签: java math modulo

我最近在编程时偶然发现了这个问题。我想知道这是如何可能的,因为模数会返回欧几里德分区a / b的其余部分。这是不是意味着它必须返回3因为返回0意味着你必须执行0除法,这是不可能的?另外,这是如何在其他编程语言中处理的?我知道modulo在不同的语言中有不同的实现,但这是一个可变的方面还是由一些数学陈述设置?

2 个答案:

答案 0 :(得分:17)

  

这不意味着它必须返回3,因为返回0意味着你必须执行除法0

没有。你没有将3除以0,你将0除以3,这当然会产生0的模数。

答案 1 :(得分:7)

如果a % ba / b的剩余部分,则0 % 3必须是0 / 3的剩余部分。自0 / 3 = 0以来,没有余数。没有除零。