我正在尝试编写简单的函数,以便在for loop
的每5th
或10th
迭代中打印一条消息。 例如:
在此代码中,我想打印i
每十次迭代:
private void calc() {
int broadcast_by_percent = 100 / 10;
int calculate = 0;
for (int i = 0; i <= 100; i++) {
if (i == calculate) {
calculate = broadcast_by_percent + 10;
Log.e("i:= ", i + "");
}
}
}
您可以使用
%
运算符来检查循环变量是否乘以 10:
int stepSize = 10;
for (int i = 0; i <= 100; i++) {
if (i % stepSize == 0) {
Log.e("i:= ", i + "");
}
}
为什么要使用if statement
,而您只需使用具有特定step
的for loop
即可做到这一点,这是代码:
int step = 10;
for (int i = 0; i <= 100; i+=step) {
Log.e("i:= ", i + "");
}
该指令将仅针对每个10th
索引运行,您可以指定所需的步骤。
这是一个演示。
编辑:
为了确保你只取step
的倍数(避免零),从这个step
开始循环:
int step = 10;
for (int i = step; i <= 100; i+=step) {
Log.e("i:= ", i + "");
}
请注意此处的i=step
。