1

真正的快速问题在这里。为了尝试生成 20,000 个随机点,我编写了以下代码:

import javax.swing.JApplet;
import java.awt.*;

public class Points extends JApplet {
    int x, y;
    public void paint (Graphics page) {
        for (int i = 0; i < 20000; i++);
        {
            x = (int)(Math.random()*200);
            y = (int)(Math.random()*200); 
            page.drawLine(x, y, x, y);
        }
    }

}

但是,这导致仅(随机)绘制了一个点。有人可以帮我找出我的错误吗?先感谢您。

4

1 回答 1

3

您的 . 后面有一个分号for。擦除它,您的代码将起作用。

for (int i = 0; i < 20000; i++) {
    x = (int)(Math.random()*200);
    y = (int)(Math.random()*200); 
    page.drawLine(x, y, x, y);
}

进一步说明:当您在声明后使用分号时for,它将结束for语句,导致类似

for(int i = 0; i < 20000; i++) {
}
x = (int)(Math.random()*200);
//rest of the code...

这就是为什么您的代码仅显示 1 分的原因。

于 2012-07-11T04:21:04.433 回答