请教对象数组的基础问题
以下产生几个对象?
int[] arr = new int[3];
我的答案:1以下的宣告产生几个对象?
int[][] arr = new int[2][3];
我的答案:2以下产生几个对象?
Integer[] arr = new Integer[3];
我的答案:3如上问题和我的答案,还请大家帮忙看下并稍作解释下

解决方案 »

  1.   

    int是原生类型,Integer是类,所以int i = 0;不能说成一个对象,Integer i = 0;就是对象了,而对于二维数组,其实就是两个一维数组啊。
      

  2.   

    谢谢,但是基础类型像int,char应该不算是对象吧?
      

  3.   

    就是刚才那样的啊,int[] i = new int[3];这是一个对象,而Integer[] i = new Integer[3],里面存的是三个对象啊。
      

  4.   

    Integer[] i = new Integer[3],里面没有往里面存,应该也还是一个对象吧?只不过开辟了那个空间。在堆内存。
      

  5.   

    我认为三题均为一个对象。
    int[] arr = new int[3]。创建一个数组对象
    int[][] arr = new int[2][3];还是一个数组对象
    Integer[] arr = new Integer[3];还是一个数组对象后面的数字是分配存储空间,并不是创建对象。个人见解。
      

  6.   

    [quote=hjw506848887
    AA5279AA
    yzw19932010
    crazypandariy

    林信良的java学习笔记上是这么解释的
    1.声明了一个数组对象
    2.3个对象:一个2维数组对象和两个单维数组对象
    3. Integer[] [] arr=new Integer[2] [3] ;
       这里也是3个数组对象,Integer对象均为NULL
      

  7.   

    [quote= hjw506848887,
    AA5279AA,
    yzw19932010,
    crazypandariy林信良的java学习笔记上是这么解释的
    1.声明了一个数组对象
    2.3个对象:一个2维数组对象和两个单维数组对象
    3. Integer[] [] arr=new Integer[2] [3] ;
       这里也是3个数组对象,Integer对象均为NULL
      

  8.   

    [quote=引用 
    hjw506848887
    AA5279AA
    yzw19932010
    crazypandariy

    林信良的java学习笔记上是这么解释的
    1.声明了一个数组对象
    2.3个对象:一个2维数组对象和两个单维数组对象
    3. Integer[] [] arr=new Integer[2] [3] ;
       这里也是3个数组对象,Integer对象均为NULL