好的,所以我的作业问题是关于康威的生命游戏。我不是最好的程序员,所以我遇到了这个问题。我们不必创建实际的动画;只需打印到控制台。
问题的第一个方法是打印电路板。
电路板表示为二维布尔数组:
boolean[][] board = new boolean[numberOfRows][numberOfColumns];
您的打印方法如下调用:
public static void printBoard(boolean[][] board)
该方法应该在单独的行上打印数组的每一行,其中'。'表示false单元格,'*'表示true。
我知道布尔值意味着它是假的还是真的,但我不知道该怎么做。我应该使用while循环吗?
public static void printBoard(boolean[][] board) {
boolean[][] board = new boolean[numberOfRows][numberOfColumns];
int i = 0;
int j = 0;
while (i < numberofColumns) {
System.out.print(".");
i++;
}
>while (i < numberofColumns) {
System.out.print("*");
j++;
}
System.out.println(); }
这就是我现在所拥有的。我甚至关闭了吗?我收到错误消息'board已经在printBoard(boolean [] [])
中定义很抱歉,如果问题不清楚。
答案 0 :(得分:2)
基本上你想要做的是迭代整个数组。您应该使用一个for
循环来迭代board
(或一个foreach循环),然后在第一个循环中嵌入另一个for
循环来遍历每个board
数组。在这个嵌入式循环中,您可以简单地执行System.out.print(board[i][j] ? "*" : ".")
之类的操作。在第一个for循环结束时,您将需要打印一个新行以获得矩形格式。