Java 打印结果每 10 次迭代一次 for 循环



我正在尝试编写简单的函数,以便在for loop的每5th10th迭代中打印一条消息。 例如:

在此代码中,我想打印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,而您只需使用具有特定stepfor 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

最新更新