我在一个数组中有三种颜色array('blue', 'red', 'green'),在我的循环中,我希望能够打印蓝色,红色,绿色,蓝色,红色,绿色.
我知道我可以每3个循环重置一个计数器,然后使用它来找到我想要的颜色 - 1,2,3,重置,1,2,3,重置等等.但是有一种简单的方法可以通过它当前循环计数,如5或7,得到2?或者通过6或9获得3?我错过了一些简单的数学解决方案吗?
McA*_*den 13
你要找的是模运算符'%';
arrayIndex = loopCount % 3;
Run Code Online (Sandbox Code Playgroud)
基本上这意味着将数字除以3并给出余数...所以它将等于0 1 2 0 1 2 0 1 2等...
编辑:
如果您使用的语言在1处启动数组索引,则可以执行以下操作:
arrayIndex = loopCount % 3 + 1;
Run Code Online (Sandbox Code Playgroud)