`import java.util.Arrays;
公共班委员会{ / ** *属性 * /
// Rows and Columns
private static final int rows = 10;
private static final int cols = 10;
private static final int numOfObstacles = 5;
private static final int numOfFuelUps = 4;
// 2-D Array for the game board and obstacles and
private int[][] gameBoard;
/**
* Constructors
*/
/**
* Initialing the game's main board (grid).
*/
public Board() {
this.gameBoard = new int[rows][cols];
for(int i = gameBoard.length - 1; i >= 0; i--) {
System.out.println();
for(int j = 0; j < gameBoard.length; j++) {
gameBoard[i][j] = i * rows + j + 1;
System.out.print(gameBoard[i][j] + "\t");
}
}
}
`
好的。如你所见,我有一个构建我的10x10板的构造函数
我不会使用GUI但我只是想让它在控制台中工作。 我的棋盘必须按相反顺序排列,就像我希望1-10排位于底部而91-100位于顶部并且球员应该遵循不同的方向,例如1-10排位于底部玩家必须从左向右移动,从11-20开始,玩家必须从右向左移动。
我决定使用StringBuilder
不断更新电路板我的问题是:如何为我刚才描述的内容编写代码? 1-10和 21-30和 41-50和 61-70和 81-90遵循特定方向,而所有其他行沿不同方向
更新: 现在我只需要反转奇数行
EXTRA: 这是一回事而另一件事是,如果玩家站在特定号码上,而不是打印我想要打印玩家ID的号码(Player1或Player2 =游戏中有2名玩家)。这是个好主意还是我应该只打印一条消息?你觉得怎么样?
答案 0 :(得分:0)
您应该了解String.format及其功能。示例:您可以指定&#34; width&#34;一串。我想这就是你需要的:
System.out.print(String.format("%-5s%-5d|", "|", 7));
说明: 这将为您提供此输出:
| 7 |您需要为每个附加参数使用一个百分号(我们有两个:&#34; |&#34;和7)以及字符串格式的说明符(此处:%s表示字符串 - &gt;&#34; |&#34;和%d表示十进制 - &gt; 7)。 -5设置该变量之前的空格数。 此外,如果要将7更新为8,可以将其命名为:
System.out.print(String.format("\r%-5s%-5d|", "|", 8));
&#34; \ r&#34;正在做这项工作。