我刚刚拿起了java,正在使用2d ArrayList自行实现骑士游览问题。我不知道这是否可行,但有没有办法增加2d ArrayList中对象的索引?或者任何其他类型的数组?
在这里,我的骑士被初始化为1,我已经将棋盘[0] [0]设置为我的骑士。
int knight = 1;
board[0][0].add(knight); // board[0][0] is now 1
所以现在我的骑士目前位于董事会的左上角(即board[0][0]
)
现在我想做一些类似board[0]+=1[0]+=2 = knight
的事情来将我的骑士的位置设置为board[1][2]
,但我不知道该如何做到这一点。
我想以某种方式做到这一点,这样当我的骑士在不同的广场上时,它仍然可以工作。
这是我的ChessBoard课程:
public class ChessBoard {
ArrayList[][] board;
public ChessBoard() {
this.board = new ArrayList[8][8];
board[0][0] = new ArrayList();
board[1][0] = new ArrayList();
board[2][0] = new ArrayList();
board[3][0] = new ArrayList();
board[4][0] = new ArrayList();
board[5][0] = new ArrayList();
board[6][0] = new ArrayList();
board[7][0] = new ArrayList();
}
任何帮助将不胜感激!
答案 0 :(得分:1)
你当然可以声明一个二维字符串数组,如:
String [][] board = new String [8][8];
但为什么不创建一个董事会类:
public class Board {
private int x;
private int y;
public void incrementX () {
x++;
}
...
}
或类似的东西?