java - 如何显示 8x8 棋盘格?
问题描述
我想显示一个 8x8 棋盘格,但是使用下面的代码,我只能得到具有交替颜色的水平线。
Color color = Color.gray;
for (int row = 0; row < 8; row++)
{
for (int col = 0; col < 8; col++)
{
if (color == Color.gray)
{
color = Color.lightGray;
}
else
{
color = Color.gray;
}
g.setColor(color);
g.fillRect(row*80, col*80, 80, 80);
}
}
解决方案
你创建你的板列,每列垂直。
您切换每个字段的颜色,没有错。
在列的末尾,您最终会得到与列开始时不同的颜色,这是正确的。
然后切换颜色并开始下一列,这意味着您使用与开始前一列相同的颜色开始下一列。即你总是在同一行中使用相同的颜色。
解决在每列之后再次切换一次,或者不对每列的第一个字段进行切换。
推荐阅读
- bash - Makefile:如何在 shell 块中使用循环值
- python - 调用API时heroku超时错误H12
- python - 如何计算平均时间并在python的另一列中填充nan?
- javascript - 如何将 DOM 元素从 componentDidMount() 传递到另一个文件中定义的另一个函数?
- validation - JWT 的验证如何区分令牌类型之间的差异?
- linux-kernel - 多分区Linux中可执行文件的绝对路径
- numpy - 如何根据条件更改 ndarray 的值?
- database - 使用 Postgres 向表添加约束
- javascript - 如何处理 Angular 和 Spring boot 之间的时区
- javascript - 如何在客户端 Express 应用程序中处理 jwt 令牌和 refreshtoken?