首先,我检查过以前的帖子但仍然找不到答案。所以这是我的问题:我想存储一个2d char数组,显示棋盘的特定状态(例如起始状态)到ArrayList
。状态的一个例子是:
我如何将这个状态(一个名为chessBoard的二维char数组)存储到一个名为chessState的ArrayList
中?
这些名字并不重要,但我认为这将有助于提供任何帮助。
我以前的尝试让我和C#22e7c30e"在我的输出中。
感谢您提供任何帮助!
答案 0 :(得分:0)
为什么不制作包含2D字符数组的 ChessState 类,然后制作这些状态的arraylist?
public class ChessState {
...
}
public class Chess {
...
ArrayList<ChessState> = ...
...
}
答案 1 :(得分:0)
ArrayList<char[][]> ChessState= new ArrayList<char[][]>();
ChessState.add(chessBoard);
通常你可以把任何你喜欢的东西放在一个数组中。如果您想了解有关棋盘的更多信息,请使用对象。上面的代码应该适用于2d char数组。
答案 2 :(得分:0)
public char[][] possibleChessMove = new char[8][8];
ArrayList<char[][]> storeMoves = new ArrayList<>();
在将possibleChessMove填充到起始板状态后,我做了这个:
storeMoves.add(possibleChessMove);
for (int i=0;i<storeMoves.size();i++ ) {
for (int j=0;j<8;j++) {
for (int k=0;k<8;k++) {
System.out.print(storeMoves.get(i)[j][k]+" ");
}
System.out.println("");
}
System.out.println("\n\n\n");
}
最初我问的问题是如何存储它们,因为我确实认为我存储错误。但最终我打印的方式不正确。