我将此代码放在Processing中的draw()函数中,但它不起作用。有人可以解释原因,并帮我解决这个问题吗?我想要它做的是循环遍历2d布尔数组的每个元素,并检查它是真还是假。
for(int i = 0; i < elemts.length; i++)
{
for(int j = 0; j < elemts[0].length; j++)
{
if(elemts[i][j] == true)
{
rect(i*5,j*5,5,5);
}
}
}
答案 0 :(得分:2)
for循环应该是这样的
for(start; condition; code to excute every turn)
如果你想跳过它,你应该添加一个分号。
答案 1 :(得分:0)
首先,你没有添加i ++或j ++,因此for循环不会运行。接下来,绘制函数每秒运行60次,因此使用一定数量的元素进行for循环并不允许draw()工作。请改用以下代码。
if(elemts[x][y] == true)
{
rect(x*5,y*5,5,5);
fill(0,0,0);
}
if(x < elemts.length)
{
x += 1;
}
if(x == elemts.length)
{
x = 0;
y += 1;
}