for循环不会像我期望的那样运行。我希望for循环只能运行一次,但是当我运行它时,它将显示一个动画。
我正在使用的编程环境:https : //www.khanacademy.org/computing/computer-programming/programming/arrays/pp/project-make-it-rain
var xPositions = [200];
var yPositions = [0];
draw = function() {
background(204, 247, 255);
for (var i = 0; i < xPositions.length; i++) {
noStroke();
fill(0, 200, 255);
ellipse(xPositions[i], yPositions[i], 10, 10);
yPositions[i] += 5;
}
};
Run Code Online (Sandbox Code Playgroud)
当我们说时i++,条件i < xPositions.length不再成立。
那么,为什么循环不止一次运行呢?
有人告诉我,因为永远调用draw函数,所以循环也将永远被调用。
但是,第二次尝试运行该循环,则不满足for循环的条件,因此不应运行。
谢谢。
块引用
。
块引用
在下面的代码中:
public class Square
{
private double side;
public Square(double a)
{
double side = a;
}
public double area()
{
return side * side;
}
public static void main(String[] args)
{
Square r = new Square(10.0);
System.out.println(r.area());
}
}
Run Code Online (Sandbox Code Playgroud)
声明字段时:
private double side;
Run Code Online (Sandbox Code Playgroud)
然后在构造函数中:
double side = a;
Run Code Online (Sandbox Code Playgroud)
为什么不抛出错误?
我认为是因为我们两次声明了变量 double 的数据类型。为什么会执行这段代码?