在java中经过一定数量的循环后执行操作

时间:2016-04-04 08:28:34

标签: java loops iterator

我必须在达到数组列表中的特定数量的循环(例如10)后在控制台中显示一条消息,然后显示有关数组列表中其余项的消息。

数组列表包含从az的所有小写字母。

现在,在计数器中,我使用MOD来检查

for (int i = 0; i > arrayList.length; i++)
{

  // If loop is not at 0 and MOD with 10 is == 0 then it means we have to show message

    if(i != 0 and i % 10 == 0)
    {
       // Show console
    }
}

如何处理剩余物品?由于字母表中有26个字母,它将在前20个字母上打印,但我不知道如何处理最后的6个字母。该消息也应该打印在那上面。它应该显示控制台消息3次而不是2。

3 个答案:

答案 0 :(得分:1)

简单更改是再次检查是否到达阵列结束。

for (int i = 0; i < arrayList.length; i++)
{

  // If loop is not at 0 and MOD with 10 is == 0 then it means we have to show message

    if((i != 0 and i % 10 == 0) || (i == arrayList.length - 1))
    { // This executes on 10 , 20, and end of array.
       // Show console
    }
}

答案 1 :(得分:0)

由于您的列表中有26个,因此您可以更均匀地将其分解为最后一个值。

for (int i = 0; i < arrayList.length; i++) {
    // do something

    // every ~1/3rd completed
    if(i % 9 == 8 || i == arrayList.length - 1) {
       // Show console
    }
}

答案 2 :(得分:0)

您只需添加一个附加条件,即检查邮件是否显示三次。如果消息未显示三次,则第三条消息将显示在数组的最后一个元素上。

这适用于元素大于20个元素的数组。

int count = 0;
for (int i = 0; i > arrayList.length; i++)
{

  // If loop is not at 0 and MOD with 10 is == 0 then it means we have to show message

    if((i != 0 and i % 10 == 0) or (count<3 and i = arrayList.length-1))
    {
        count++;
       // Show console
    }
}