for (int i = 0; i < 150; i++) {
if (i % 13 == 0) {
System.out.println("#: " + i);
}
}
我昨天刚开始学习java而且我坚持使用for loop语句。 我对部分感到困惑
if (i % 13 == 0)
变量i初始化为零 int i = 0 如果将零除以13,则结果为0.没有余数。我试过计算器。 但是当我运行该程序时。我得到这样的结果,它一直在增加13怎么样?
#: 0
#: 13
#: 26
#: 39
#: 52
#: 65
#: 78
#: 91
#: 104
#: 117
#: 130
#: 143
答案 0 :(得分:2)
你所看到的是正确的;它似乎每次都会增加13,因为你的if
语句实际上是用英语简单地说:
每当13平均分割i时,显示i的值(不留余数)
事实上,你所看到的每个数字都是均匀分配的,没有余数:
#: 0 // 0 / 13 = 0, no remainder
#: 13 // 13 / 13 = 1, no remainder
#: 26 // 26 / 13 = 2, no remainder
依旧......
答案 1 :(得分:1)
您看到的结果是0到150之间的所有数字(您在此行中指定:for (int i = 0; i < 150; i++) {
)是倍数(没有余数)为13
答案 2 :(得分:1)
第一个循环为每次迭代的int i
加1。然后它将检查在除以13时是否有余数:
(i % 13 == 0)
最后,如果它除以13时没有余数,它将打印该数字:
System.out.println("#: " + i);
因此,结果基本上是0到150之间13的倍数的所有数字。