Java 如何为循环增加高度和位置

Java 如何为循环增加高度和位置,java,paintcomponent,Java,Paintcomponent,我正在尝试使用它,以便在面板上创建13次我的drawRect。这是正确的,但我也希望它从一个高度开始,比如说100,然后递增到550。我不确定如何添加高度增量,因为我已经在for循环中使用了draw rect import java.awt.Color; import java.awt.Graphics2D; import java.util.Random; import javax.swing.JPanel; public class Draw extends JPanel { C

我正在尝试使用它,以便在面板上创建13次我的
drawRect
。这是正确的,但我也希望它从一个高度开始,比如说
100
,然后递增到
550
。我不确定如何添加高度增量,因为我已经在for循环中使用了draw rect

import java.awt.Color;
import java.awt.Graphics2D;
import java.util.Random;

import javax.swing.JPanel;

public class Draw extends JPanel
{
    Color rand;

    private int randRed() {
        int red;
        Random randomNumber = new Random();
        red = randomNumber.nextInt(255);
        return red;
    }

    private int randGreen() {
        int green;
        Random randomNumber = new Random();
        green = randomNumber.nextInt(255);
        return green;
    }

    private int randBlue() {
        int blue;
        Random randomNumber = new Random();
        blue = randomNumber.nextInt(255);
        return blue;
    }

    int newRectPos = 0;
    public void paintComponent(java.awt.Graphics g)
    { 
        super.paintComponent(g);

        for (int i = 0; i < 550; i ++)
        {

        }

        for (int j = 0; j <= 800; j = j + 60; int i = 0; i <= 550; i ++)
        {
            g.setColor(new Color(randRed(), randGreen(), randBlue()));
            g.drawRect(j, 0, 60, 550);
            g.fillRect(j, 0, 60, 550);
            repaint();

        }
    }
}
导入java.awt.Color;
导入java.awt.Graphics2D;
导入java.util.Random;
导入javax.swing.JPanel;
公共类Draw扩展了JPanel
{
色兰;
二等兵{
红色;
随机数=新随机数();
红色=随机数.nextInt(255);
返回红色;
}
private int randGreen(){
绿色;
随机数=新随机数();
绿色=随机数.nextInt(255);
返回绿色;
}
二等兵{
蓝色;
随机数=新随机数();
蓝色=随机数.nextInt(255);
返回蓝色;
}
int newRectPos=0;
公共组件(java.awt.g)
{ 
超级组件(g);
对于(int i=0;i<550;i++)
{
}
对于(int j=0;j而不是


对于(int j=0;j,您可以在
循环语句的
的第一部分中定义几个变量,并用逗号分隔它们,

for (int i = 0, j = 0;  //variable definition, more than 1 from the same type
     j <= 800 && i <= 550; //conditional
     j += 60, i ++ //after completing a loop in the for
    ) {
        g.setColor(new Color(randRed(), randGreen(), randBlue()));
        //fix this code accordingly
        g.drawRect(j, 0, 60, 550);
        g.fillRect(j, 0, 60, 550);
        repaint();
}
for(int i=0,j=0;//变量定义,来自同一类型的多个变量

谢谢,我忘了做
&&
,而只是在int j之外创建了它。有人想解释一下反对票吗?我想是挑剔的人又回来了。
for (int j = 0; j <= 800; j = j + 60) 
    for(int i = 0; i <= 550; i ++)
for (int i = 0, j = 0;  //variable definition, more than 1 from the same type
     j <= 800 && i <= 550; //conditional
     j += 60, i ++ //after completing a loop in the for
    ) {
        g.setColor(new Color(randRed(), randGreen(), randBlue()));
        //fix this code accordingly
        g.drawRect(j, 0, 60, 550);
        g.fillRect(j, 0, 60, 550);
        repaint();
}