请问我这样声明
private ArrayList<ArrayList<GeometricObject> > quaLayer=new  ArrayList<ArrayList<GeometricObject> > ();
然后我有程序计算空间索引,得出一个索引号index,本来我是想直接quaLayer.get(index).add(GeometricObject);就像放了若干个贴了编号(与索引号对应)的筐子,根据Index值把对象存进相应的筐子了,但是这样有错误,应该怎么改。我用了一个死办法,就是声明若干个ArrayList<GeometricObject> temp1,temp2...temp16...;然后利用switch语句放进这个临时的,然后再quaLayer.add(temp1);这样的方法是死的,我想不设定大小,让他自己添进去。

解决方案 »

  1.   

    报的是什么错啊,帖一下不过我估计quaLayer.get(index)这样的时候,里面那个没有实例,你就add了
      

  2.   

    一个大框子 里面有很多小框子 但是你这里 当你:quaLayer.get(index).add(GeometricObject);
    时 小筐子都还不存在 当然会报错。
      

  3.   

    报错就是小筐子不在啊,问题是我不知道怎么让小筐子先有,然后加东西,就是这个问题了。我改了程序了报错大概就是指针为空那个什么NotPointer那个,现在已经转换为怎么加小筐子的问题了
      

  4.   


    quaLayer.add(new ArrayList<GeometricObject>());
      

  5.   

    quaLayer.add(new ArrayList<GeometricObject>);
    quaLayer.get(0).add(GeometricObject);
      

  6.   

    先填充LIST再从里面获取 不过你想好 是用一个填充一个还是一开始就填充一定的数量