没那么多吧。。
你现在使用的是int而不是Integer,我觉得是1+3+3

解决方案 »

  1.   

    使用int或Integer创建有什么区别呢?盼详述。另外,如果是下述创建方式,应该是40个句柄没错吧:
    int[][][] a=new int[3][][];
    for(int i=0;i<3;i++){
      a[i]=new int[3][];
      for(int j=0;j<3;j++){
        a[i][j]=new int[3];
      }
    }
      

  2.   

    to htouch(回家)
    int是基本数据类型,对int对象的操作只有系统定义的那么几个运算符,你也不能派生它。它只能用传值的方法传递。int类型的数据不需要new的。Integer不是基本类型,它有自己的一些方法。它可以用传递引用的方法传递。Integer的对象是new出来的。它的开销大。形象的说int是原子, Integer是分子。
      

  3.   

    应该是13个引用。
    即 a, a[0]...a[2], a[0][0]...a[2][2]
       1个  + 3个      + 9个a[i][j][k]没有自己单独的引用。只能通过数组访问。
      

  4.   

    To: clavy(有巢无车氏)
    晕菜了,恕我无知
    先澄清一下,你认为两种方式都是13个句柄,还是只有第二种是?
    另外,为什么a[i][j][k]没有自己的引用呢?因为没有创建吗?这个a[i][j][k]难道不是句柄吗?
      

  5.   

    第一维存放三个指向二维数组的引用(a[0][][],a[1][][],a[3][][]),
    第二维存放各存放三个指向一维数组的引用(a[0][0][],a[0][1][],a[0][2][]...a[2][2][]),
    共9个,
    最后加一个a,指向一个三维数组,
    a[1][1][1]里面放的不是引用,是一个整数数值。。
    一开始想错了,多谢clavy纠正。。
      

  6.   

    hehe..两种方法都是创建一个[3][3][3]的数组啊。。有区别吗?:))