【发布时间】:2020-02-22 03:55:05
【问题描述】:
我需要使第二个 if 语句(按下按钮时)使用 for 循环重复命令 5 次,然后为第三个 if 语句使用 while 循环
while 和 for 循环是我尝试过的东西,但我还没有让代码工作。它只在随机位置绘制一个点。
if (mouseX >= BUTTONX && mouseX <= BUTTONX+BUTTONWIDTH && mouseY >= BUTTONY && mouseY <= BUTTONY+BUTTONHEIGHT) {
//if click on button, choose random position
x = (int)random(width);
y = (int)random(height);
} else {
if (mouseX >= BUTTONX && mouseX <= BUTTONX+BUTTONWIDTH && mouseY >= BUTTONY2 && mouseY <= BUTTONY2+BUTTONHEIGHT) {
for(int a = 0; a <= 5; a++){
x = (int)random(width);
y = (int)random(height);
}
} else {
if (mouseX >= BUTTONX && mouseX <= BUTTONX+BUTTONWIDTH && mouseY >= BUTTONY3 && mouseY <= BUTTONY3+BUTTONHEIGHT) {
int i = 0;
while(i <= 5){
x = (int)random(width);
y = (int)random(height);
i++;
}
} else {
//if click off button, place dot at mouse location
x = mouseX;
y = mouseY;
}
}
}
}
【问题讨论】:
-
您是否尝试过放置 Logging 语句或断点以查看它是否完全符合 for/while 条件?循环的结构看起来不错(尽管它们会立即多次执行完全相同的操作,并且在执行时似乎只做一件事而不是 5 件事)
-
我的导师要求我做同样的事情,但有两个不同的循环。 x 和 y 每次都会不同,因为它是随机生成的吗? @user1538301
-
要继续使用@user1538301,您正在计算 x 和 y 的多个值,但您只会使用最终(第 5 个)值,因为循环中没有任何东西可以使用它们。
-
哦,对了,你使用的是随机数生成函数。如果它真的是一个伪随机数生成器,是的,它每次都可能不同。但是,当设置值时,x 和 y 什么都不做,因此您只能观察这些循环迭代之一。
-
谢谢@fedup 原来我只是在需要将点放在循环内时才画一次。
标签: java for-loop while-loop processing