Java 如何增加ArrayList中对象的索引
我最近刚刚学习了java,正在使用2d ArrayList实现我自己的骑士之旅问题。我不知道这是否可行,但有没有办法增加2d ArrayList中对象的索引?或者任何其他类型的数组 在这里,我将我的骑士初始化为1,并将棋盘[0][0]设置为我的骑士Java 如何增加ArrayList中对象的索引,java,arraylist,indexing,Java,Arraylist,Indexing,我最近刚刚学习了java,正在使用2d ArrayList实现我自己的骑士之旅问题。我不知道这是否可行,但有没有办法增加2d ArrayList中对象的索引?或者任何其他类型的数组 在这里,我将我的骑士初始化为1,并将棋盘[0][0]设置为我的骑士 int knight = 1; board[0][0].add(knight); // board[0][0] is now 1 现在我的骑士在棋盘的左上角(即棋盘[0][0]) 现在我想做一些类似于board[0]+=1[0]+=2=knigh
int knight = 1;
board[0][0].add(knight); // board[0][0] is now 1
现在我的骑士在棋盘的左上角(即棋盘[0][0]
)
现在我想做一些类似于board[0]+=1[0]+=2=knight
的事情,将我的骑士的位置设置为board[1][2]
,但我不知道该怎么做。
我想这样做,当我的骑士在另一个广场上时,它仍然可以工作
这是我的棋盘课:
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();
}
public class Board {
private int x;
private int y;
public void incrementX () {
x++;
}
...
}
任何帮助都将不胜感激 您当然可以声明一个2d字符串数组,如:
String [][] board = new String [8][8];
但是为什么不创建一个board类呢
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();
}
public class Board {
private int x;
private int y;
public void incrementX () {
x++;
}
...
}
或者类似的?
板[0][0]=0;董事会[1][2]=骑士代码>。有史以来最混乱的语法ArrayList[][]板;为什么不int[][]板
?谢谢你的建议。我想这会更像我想要的。我不会同意这一点,因为棋盘实际上没有移动,你希望你的骑士改变位置,而不是棋盘。@luisdurazoa这是一个公平的观点——如果问题是如何发展一场国际象棋,我会同意你的看法。但是,因为这是围绕骑士的巡演问题,传统上不是用蛮力解决的,而是通过其他方法解决的,比如分而治之,它改变了棋盘的大小。我不是在给骑士建模,而是在给棋盘建模。我会马上尝试这个问题,我试着给一个真正的棋盘建模,然后意识到它是完全不同的东西。