第一个数小于第二个数时的模除法

如果这是一个简单的问题,我很抱歉,但是当第一个数字小于第二个数字时,我很难理解模除的概念。例如,当1%4时,我的书说余数是1。我不明白1是1%4的余数。
1 / 4为0.25。我是否错误地考虑了模数除法?


答案 1

首先,在Java中,%是余数(非模)运算符,其语义略有不同。也就是说,您需要考虑仅整数除法,就好像没有小数值一样。可以将其视为存储无法分割的项目:您可以在总容量为1的存储中存储零个大小为4的项目。存储最大项目数后的剩余容量为 1。同样,13%5 是 3,因为您可以在大小为 13 的存储中容纳 2 个大小为 5 的完整项目,而剩余容量为 。13 - 2*5 = 3


答案 2

如果将 1 除以 4,则得到 0,余数为 1。这就是模量的全部,除法后的余数。