Java 有助于理解循环代码

Java 有助于理解循环代码,java,for-loop,Java,For Loop,我不明白这段代码是如何画出一个完整的棋盘而不仅仅是8个方块的 特别是:循环的工作原理 import acm.program.*; import acm.graphics.*; public class chbord extends GraphicsProgram { /* number of columns */ private static final int Ncolumns = 8; /* number of rows*/ private static f

我不明白这段代码是如何画出一个完整的棋盘而不仅仅是8个方块的

特别是:循环的
工作原理

import acm.program.*;
import acm.graphics.*;

public class chbord extends GraphicsProgram {
    /* number of columns */
    private static final int Ncolumns = 8;
    /* number of rows*/
    private static final int Nrows = 8;

    public void run() {
        int sqSize = getHeight() / Nrows;
        for (int i = 0; i < Nrows; i++) {
            for (int j = 0; j < Ncolumns; j++) {
                int x = j * sqSize;
                int y = i * sqSize;

                GRect sq = new GRect(x, y, sqSize, sqSize);
                sq.setFilled(((i + j) % 2) != 0);
                add(sq);
            }
        }
    }
}
导入acm.program.*;
导入acm图形。*;
公共类chbord扩展图形程序{
/*列数*/
私有静态final int Ncolumns=8;
/*行数*/
专用静态最终int Nrows=8;
公开募捐{
int sqSize=getHeight()/Nrows;
对于(int i=0;i
循环中有一个循环:

for (int i = 0; i < Nrows; i++) {
    for (int j = 0; j < Ncolumns; j++) 

这使得通过内循环的总迭代次数为64次(8 x 8),每个棋盘格一次。

循环中有一个循环:

for (int i = 0; i < Nrows; i++) {
    for (int j = 0; j < Ncolumns; j++) 

这使得64次迭代(8 x 8)通过内部循环-每个棋盘格一次。

这是因为实际上有两个for循环,而不仅仅是一个。这称为“嵌套”循环,这是用于创建x行柱网轴线(如棋盘)的典型方法。

这是因为实际上有两个for循环,而不仅仅是一个。这被称为“嵌套”循环,它是用来创建行X列网格(如棋盘)的典型方法。

< P>当上述两个标示都正确时,考虑到第一个循环每次运行一次,第二个循环运行8次。为了演示在每个循环中放置两个不同的Soo.Out.PrtLn语句并查看它们打印的顺序。

< P>在上述两个标示都正确的情况下,考虑到第一个循环每次运行一次,第二个循环运行8次。为了演示,请在每个循环中放入两个不同的System.out.println语句,并查看它们的打印顺序。

这是嵌套循环的示例—一个循环在另一个循环中。外部循环使其包含的代码针对0和nrows-1(包括0和nrows-1)之间的i值执行。内部循环导致对0和ncols-1(包括0和ncols-1)之间的j值执行它包含的代码。由于内部循环中的代码是针对n个值i执行的,对于i的每个值,m个值j,执行的总数是nm。

这是嵌套循环的一个示例-一个循环在另一个循环中。外部循环使其包含的代码针对0和nrows-1(包括0和nrows-1)之间的i值执行。内部循环导致对0和ncols-1(包括0和ncols-1)之间的j值执行它包含的代码。由于内循环中的代码是针对n个值i执行的,并且对于每个值i,m个值j,执行的总数是nm。

外循环第一次运行时,内循环完全运行(8次)。然后外循环再次运行,内循环再次完全运行(再运行8次)

这一直延续到第八排

因此,可以绘制8行,但每行都绘制为8列

结果:绘制了所有64个正方形

特别是:for循环的工作原理。

For循环是编程的关键部分。以下是一些解释文章:

  • 循环。-语法可能有点不同,但想法是一样的

外循环第一次运行时,内循环完全运行(8次)。然后外循环再次运行,内循环再次完全运行(再运行8次)

这一直延续到第八排

因此,可以绘制8行,但每行都绘制为8列

结果:绘制了所有64个正方形

特别是:for循环的工作原理。

For循环是编程的关键部分。以下是一些解释文章:

  • 循环。-语法可能有点不同,但想法是一样的

外循环和内循环将创建一个NRows*NColumns网格,模数运算符(%)将每隔一个正方形着色一次,因为只有两个MOD 2值。

外循环和内循环将创建一个NRows*NColumns网格和模数运算符(%)由于只有两个MOD 2的值,因此将每隔一个方块着色。

Ncolumns*Nrows=64
Ncolumns*Nrows=64