![](/img/trans.png)
[英]In Java, how do I use a loop to instantiate new objects, store them in an array, and then use them?
[英]How do I use Java constructors to instantiate an array?
我有一个类的构造函数,它将模拟Java中的骑士之旅。 现在,构造函数接受开始的行和列。 我想知道是否可以采用这种方法来缩小电路板的大小(总行数,总列数)? 我对Java还是很陌生,并且不完全了解数组,因此不胜感激!
public KnightsTour(int startRow, int startCol)
{
myBoard = new int[9][9];
myCheckList = new int[9]; // myCheckList initialized with all 0
myRandomMove = new Random();
myMoveNumber = 1;
// myRow and myCol start at (1,1)
myRow = startRow;
myCol = startCol;
myBoard[myRow][myCol] = myMoveNumber; // gets the board started
}
您可以在数组构造函数中使用任何包含变量引用的整数类型表达式。 因此,您可以为类的构造函数添加两个以上参数,以指定电路板的尺寸:
public KnightsTour(int startRow, int startCol, int height, int width) {
myBoard = new int[height][width];
}
Java数组从0开始,上面的代码从1开始。假设9-1
为8
,则myBoard = new int[9][9];
有8个空格myBoard = new int[9][9];
。 每个在棋盘上的档次。
要传递它并仍使用偏移量一个数组索引(如果必须),则可能看起来像
public KnightsTour(int startRow, int startCol, int ranks, int files) { myBoard = new int[ranks + 1][files + 1]; myCheckList = new int[ranks + 1];
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.