class  test
{
public static void main(String[] args) 
{  int i,j;
ArrayList[] array = new ArrayList[3];
int counter=0;
for (i=0;i<2 ;i++ )
{ int p=12;
ArrayList temp1 = new ArrayList();
if (array[i]!=null)
{
temp1= (ArrayList) array[i];
}
temp1.add(p);
array[i]= temp1;
p++;
}
System.out.println(array[1].get(0));
System.out.println(array[0].get(0));
}
}请问各位大虾,为什么输出结果不是12 和13呢,而是12 ,12 , 这个问题困扰了我很久!!!
我最初的目的是想做一 list of arraylist , (ArrayList[])
每个数组单位是一个ArrayList, 这样我就可以动态储存调用 列数确定,行数不定的,并且每一列的元素类型可以不同  好比2D 超级数组 
                 
                     array[0]          [1]        [2]      
ArrayListIndex(0)          0            12         null
ArrayListIndex(1)         "123"         13         null
ArrayListIndex(2)         123.3         null       null
ArrayListIndex(3)           1           null       null 
ArrayListIndex(4)           2           null       null 
     .
     .
     .
     .如果我想做一个行数和列数都可以动态变化的数据表因该怎么实现呢?
请各位大虾顺便推荐两本,关于数据结构的好书吧,多谢了!!!!!!