不会撒谎,这是一个家庭作业问题。事实上,我们还没有详细介绍图形,只是通过一个例子。
我不确定我的程序有什么问题。一切似乎都结束了,但弹出的窗口并没有显示我想要创建的内容。
import java.util.*;
import java.awt.Color;
import java.awt.Graphics;
import javax.swing.JFrame;
import javax.swing.JComponent;
public class ProblemR6_37
{
public static void draw(Graphics g)
{
int[][] values=new int[8][8];
for (int i=0; i<values.length; i++)
{
for (int j=0; j<values[i].length; j++)
{
if ((i+j)%2!=0)
{values[i][j]=1;}
}
}
for (int i=0; i<values.length; i++)
{
for (int j=0; j<values[i].length; i++)
{
if (values[i][j]==0)
{
g.setColor(Color.BLACK);
g.fillRect(j*20, i*20, 20,20);
}
else if (values[i][j]==1)
{
g.setColor(Color.WHITE);
g.fillRect(j*20,i*20,20,20);
}
}
}
}
public static void main(String[] args)
{
JFrame frame=new JFrame();
frame.setSize(400,400);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JComponent component=new JComponent()
{
public void paintComponent(Graphics graph)
{
draw(graph);
}
};
frame.add(component);
frame.setVisible(true);
}
}
大多数图形项都是从示例中直接拉出来的。
任何帮助都会很棒!
答案 0 :(得分:0)
您的代码中只有一个问题:
将for (int j=0; j<values[i].length; i++)
更改为for (int j=0; j<values[i].length; j++)
您放置i++
而不是j++
。