Java 理解ArrayList.class中的构造函数时出现问题
在编写代码时,我试图声明一个可以创建arraylist的arraylist的类,但很快我发现很难为我的类定义一个合适的构造函数。我想为我定义一些方法来处理巨大的外部arraylist1000*1000,但我可能会受到C的影响,并且总是尝试使用structdef之类的东西 我应该如何定义我的类?我想单独声明每一行不是明智的选择,我不想直接使用2D arraylist。此外,我应该如何定义构造函数来获取2D arraylist对象 //在此更新 下面是我的代码示例: 类farbicMap{ //属性 ArrayList farbicUnit=新的ArrayList; //建造师 法拉比图{Java 理解ArrayList.class中的构造函数时出现问题,java,arraylist,constructor,Java,Arraylist,Constructor,在编写代码时,我试图声明一个可以创建arraylist的arraylist的类,但很快我发现很难为我的类定义一个合适的构造函数。我想为我定义一些方法来处理巨大的外部arraylist1000*1000,但我可能会受到C的影响,并且总是尝试使用structdef之类的东西 我应该如何定义我的类?我想单独声明每一行不是明智的选择,我不想直接使用2D arraylist。此外,我应该如何定义构造函数来获取2D arraylist对象 //在此更新 下面是我的代码示例: 类farbicMap{ //属性
对于int i=0;i如果大小固定,则应使用数组。这就是我理解您的用法的方式:
class Test {
public static void main(String[] args) {
Board board = new Board(1000, 1000);
board.put(1, 2, "X");
Object x = board.get(1, 2);
System.out.println("x = " + x);
}
}
class Board {
private final int xSize;
private final int ySize;
private ArrayList<ArrayList<Object>> board = new ArrayList<>();
public Board(int xSize, int ySize) {
this.xSize = xSize;
this.ySize = ySize;
for (int i = 0; i < xSize; i++) {
board.add(getListOfNulls());
}
}
public Object get(int x, int y) {
return board.get(x).get(y);
}
public void put(int x, int y, Object toAdd) {
List<Object> xs = board.get(x);
if (xs == null) {
xs = getListOfNulls();
}
xs.add(y, toAdd);
}
private ArrayList<Object> getListOfNulls() {
ArrayList<Object> ys = new ArrayList<>();
for (int j = 0; j < ySize; j++) {
ys.add(null);
}
return ys;
}
}
你能展示一些代码吗?因为不清楚你想做什么。我试图声明一个类,可以创建一个arraylist of arraylist。我的类不创建东西。它代表东西。你的类应该代表什么?@Chien,你能分享你当前的代码吗?这个问题没有答案。非常感谢你!这是w我正在寻找的帽子,但比我的版本要好得多:@Chien,不客气,如果是真的,你可以点击灰色的chek标记接受这个答案。