我正在编写一个Snakes and Ladders游戏,除了在消息对话框中显示网格的方法之外,我已经整理了大部分逻辑。
private static void generateGrid() {
String[][] board = new String[][] {
{ "48", "47", "46", "45", "44", "43", "42" },
{ "35", "36", "37", "38", "39", "40", "41" },
{ "34", "33", "32", "31", "30", "29", "28" },
{ "21", "22", "23", "24", "25", "26", "27" },
{ "20", "19", "18", "17", "16", "15", "14" },
{ "7", "8", "9", "10", "11", "12", "13" },
{ "6", "5", "4", "3", "2", "1", "0" } };
String grid = "";
for (int x = 0; x < 7; x++) { // This counts the number of
// rows
for (int y = 0; y < 7; y++) { // This counts the number
// of columns
if ((board[x][y] + "").length() == 1) {
grid = grid + board[x][y] + " \t";
} else {
grid = grid + board[x][y] + " \t";
}
grid = grid + "\n";
}
JOptionPane.showMessageDialog(null, grid);
}
}
我希望消息对话框中显示的网格具有与数组中相同的布局,但是当我运行程序时,这是最终结果:
如何获取它以便在显示网格时,数字的顺序遵循数组中显示的布局?
答案 0 :(得分:0)
您正在每个数字后执行语句private static void generateGrid() {
String[][] board = new String[][] {
{ "48", "47", "46", "45", "44", "43", "42" },
{ "35", "36", "37", "38", "39", "40", "41" },
{ "34", "33", "32", "31", "30", "29", "28" },
{ "21", "22", "23", "24", "25", "26", "27" },
{ "20", "19", "18", "17", "16", "15", "14" },
{ "7", "8", "9", "10", "11", "12", "13" },
{ "6", "5", "4", "3", "2", "1", "0" } };
String grid = "";
for (int x = 0; x < 7; x++) { // This counts the number of
// rows
for (int y = 0; y < 7; y++) { // This counts the number
// of columns
if ((board[x][y] + "").length() == 1) {
grid = grid + board[x][y] + " \t";
} else {
grid = grid + board[x][y] + " \t";
}
}
grid = grid + "\n";
}
JOptionPane.showMessageDialog(null, grid);
}
,因此在数组的每个元素后添加一个新行。正确的代码如下所示:
a
要自己找到类似问题的解决方案,下次要么使用带调试器的IDE(如Eclipse或NetBeans)并单步执行代码,要么只需添加System.out.println()命令,这样就可以看到每一步的变量值。