Java While循环在for语句中不中断

Java While循环在for语句中不中断,java,for-loop,while-loop,Java,For Loop,While Loop,我试图写一个游戏,其中一个球产生了三个回合,如果球通过屏幕底部,回合结束 下面是我写的类,我可以让球移动,但是当它移动到屏幕底部时,球不会像我预期的那样在屏幕中间再生。 抱歉,如果这个问题是基本的,但我已经为此工作了一段时间,似乎卡住了 private void initiateBall() { double bx = (WIDTH / 2) - BALL_RADIUS; double by = (HEIGHT / 2) - BALL_RADIUS;

我试图写一个游戏,其中一个球产生了三个回合,如果球通过屏幕底部,回合结束

下面是我写的类,我可以让球移动,但是当它移动到屏幕底部时,球不会像我预期的那样在屏幕中间再生。

抱歉,如果这个问题是基本的,但我已经为此工作了一段时间,似乎卡住了

private void initiateBall() {
        double bx = (WIDTH / 2) - BALL_RADIUS;
        double by = (HEIGHT / 2) - BALL_RADIUS;
        GOval ball = new GOval(bx, by,BALL_RADIUS, BALL_RADIUS);
        ball.setFilled(true);
        ball.setColor(Color.BLACK);
        vx = rgen.nextDouble(1.0, 1.2);
        if (rgen.nextBoolean(0.5)) vx = -vx;
        vy = 3.0;
        for (int i = 0; i <= NTURNS; i++) {
            add (ball);
            while (ball.getY() < HEIGHT && ball.getX() < HEIGHT) {
            ball.move(vx, vy);
            pause(DELAY);
        }
    }

私有无效初始化球{

   for (int k = 0; k < NTURNS; k ++) {
        double bx = (WIDTH / 2) - BALL_RADIUS;
        double by = (HEIGHT / 2) - BALL_RADIUS;
        GOval ball = new GOval(bx, by, BALL_RADIUS, BALL_RADIUS);
        ball.setFilled(true);
        ball.setColor(Color.BLACK);
        vx = rgen.nextDouble(1.0, 1.2);
        if (rgen.nextBoolean(0.5)){
            vx = -vx;
        }
        vy = 3.0;
       double x = bx;
       double y = by;
       add(ball, (x), y);
    while (ball.getY() < HEIGHT) {
    ball.move(vx,vy);
    pause(DELAY);
    }
  }
}

我们需要move和pause方法的内容。嗯……代码中的开始大括号比结束大括号多……是否暂时缺少大括号}?此外,while循环的条件错误。X坐标应与宽度进行比较。此外,while支架不会结束。