在学习了一些 Java 语言后,我正在自学编写 Java 代码,并决定制作一款非图形的国际象棋游戏。
第一个问题: 这是我在“Board.java”中的多维字符串列表:
public static String chessBoard[][][] = {
{ { "A1" }, { "A2" }, { "A3" }, { "A4" }, { "A5" }, { "A6" },
{ "A7" }, { "A8" } },
{ { "B1" }, { "B2" }, { "B3" }, { "B4" }, { "B5" }, { "B6" },
{ "B7" }, { "B8" } },
{ { "C1" }, { "C2" }, { "C3" }, { "C4" }, { "C5" }, { "C6" },
{ "C7" }, { "C8" } },
{ { "D1" }, { "D2" }, { "D3" }, { "D4" }, { "D5" }, { "D6" },
{ "D7" }, { "D8" } },
{ { "E1" }, { "E2" }, { "E3" }, { "E4" }, { "E5" }, { "E6" },
{ "E7" }, { "E8" } },
{ { "F1" }, { "F2" }, { "F3" }, { "F4" }, { "F5" }, { "F6" },
{ "F7" }, { "F8" } },
{ { "G1" }, { "G2" }, { "G3" }, { "G4" }, { "G5" }, { "G6" },
{ "G7" }, { "G8" } },
{ { "H1" }, { "H2" }, { "H3" }, { "H4" }, { "H5" }, { "H6" },
{ "H7" }, { "H8" } }, };
如果我在棋盘上放置一个棋子(来自“WPawn.java”),我会得到:
A1 A2 A3 A4 A5 A6 A7 A8
WP1 B2 B3 B4 B5 B6 B7 B8
C1 C2 C3 C4 C5 C6 C7 C8
D1 D2 D3 D4 D5 D6 D7 D8
E1 E2 E3 E4 E5 E6 E7 E8
F1 F2 F3 F4 F5 F6 F7 F8
G1 G2 G3 G4 G5 G6 G7 G8
H1 H2 H3 H4 H5 H6 H7 H8
我希望结果列表(上面)返回到原始列表(来自第一个代码),但我该怎么做?
提前致谢:)
public static void update() {
// Print chessBoard nicely
System.out.println("Here is the board: ");
for (int row = 0; row < chessBoard.length; row++) {
for (int column = 0; column < chessBoard[row].length; column++) {
for (int pos = 0; pos < chessBoard[row][column].length; pos++) {
System.out.print(chessBoard[row][column][pos] + "\t");
}
}
System.out.println();
}
// end
}
最佳答案
不质疑你当前的数据结构,我想你只需要做这样的事情
public class Chess {
/**
* @param args
*/
public static void main(String[] args) {
String[][][] chessBoard = initBoard();
//do what you want
//...
//reset
chessBoard = initBoard();
}
private static String[][][] initBoard() {
return new String[][][]{
{ { "A1" }, { "A2" }, { "A3" }, { "A4" }, { "A5" }, { "A6" }, { "A7" }, { "A8" } },
{ { "B1" }, { "B2" }, { "B3" }, { "B4" }, { "B5" }, { "B6" }, { "B7" }, { "B8" } },
{ { "C1" }, { "C2" }, { "C3" }, { "C4" }, { "C5" }, { "C6" }, { "C7" }, { "C8" } },
{ { "D1" }, { "D2" }, { "D3" }, { "D4" }, { "D5" }, { "D6" }, { "D7" }, { "D8" } },
{ { "E1" }, { "E2" }, { "E3" }, { "E4" }, { "E5" }, { "E6" }, { "E7" }, { "E8" } },
{ { "F1" }, { "F2" }, { "F3" }, { "F4" }, { "F5" }, { "F6" }, { "F7" }, { "F8" } },
{ { "G1" }, { "G2" }, { "G3" }, { "G4" }, { "G5" }, { "G6" }, { "G7" }, { "G8" } },
{ { "H1" }, { "H2" }, { "H3" }, { "H4" }, { "H5" }, { "H6" }, { "H7" }, { "H8" } }, };
}
}
关于java - 执行任何操作后如何重置多维列表(国际象棋中的 Noob Java 编码)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24841237/