我正在学习处理(对于那些不知道它是一种基于java语言的视觉艺术的人),我遇到了嵌套for循环的奇怪问题。 这是一个简单的程序,(应该)生成随机数量的点,并将它们全部连接起来。
size(1280, 1050);
background(227, 199, 147);
smooth();
stroke(255);
strokeWeight(2);
int points = int(random(30)) + 2;
int[][] Points = new int[points][2];
for (int i = 0; i < points; i++)
{
Points[i][0] = int(random(1280));
Points[i][1] = int(random(1050));
}
for (int i = 0; i + 1 < points; i++)
{
for (int L = i+1; L < points; L++);
{
line(Points[i][0], Points[i][1], Points[L][0], Points[L][1]);
}
}
当我跑这个时,我得到一个错误,说“找不到任何名为L的东西”,这对我来说似乎很疯狂。有什么想法吗?
答案 0 :(得分:8)
嵌套循环后你有一个分号。这使得语法正确的空循环,后跟一个引用未声明变量L
的块。
作为旁注,通常使用小写字母命名循环变量,通常从i
,j
,k
,m
开始,依此类推。小写l
经常被跳过,因为它与大写I
相似。
答案 1 :(得分:1)
for循环声明后有一个分号:
for (int L = i+1; L < points; L++);