我已为drawPoints[][]
添加了一些值,然后创建了一个ArrayList
对象点
ArrayList points=new ArrayList();
points.add(drawPoints);
现在我想从点检索drawPoints的值,我该怎么做?
答案 0 :(得分:3)
您只需将一个2d数组放入ArrayList的第一个插槽中。所以你要写:
int[][]somePoints = (int[][])points.get(0);
答案 1 :(得分:3)
您需要使用
访问ArrayList中的第一个drawPoints
int[][] tmp = (int[][]) points.get(0);
然后您将能够获得值,例如
tmp[0][1];
这是打印存储在ArrayList中的两个2D数组值的程序的一个小例子:
int[][] drawPoints = new int[2][2];
int[][] drawPoints2 = new int[2][2];
drawPoints[0][0] = 1;
drawPoints[0][1] = 2;
drawPoints[1][0] = 3;
drawPoints[1][1] = 4;
drawPoints2[0][0] = 5;
drawPoints2[0][1] = 6;
drawPoints2[1][0] = 7;
drawPoints2[1][1] = 8;
ArrayList<Object> points=new ArrayList<Object>();
points.add(drawPoints);
points.add(drawPoints2);
for(Object tab : points){
int[][] tmp = (int[][]) tab;
for(int i=0;i < tmp.length;i++){
for(int j=0;j<tmp[i].length;j++){
System.out.println(tmp[i][j]);
}
}
System.out.println("------------");
}
答案 2 :(得分:0)
如果我理解正确的话:
points.get(0); // get the first item (at index 0) from the list
答案 3 :(得分:0)
points.get(i)
为您提供值,在本例中为i = 0
。
答案 4 :(得分:0)
ArrayList
由一维数组支持。如果您想模仿drawPoints[][]
,我建议使用ArrayList
,然后迭代它以填充它,然后检索值。