对象数组

yinan9 2013-09-11 10:39:27
请教对象数组的基础问题


以下产生几个对象?
int[] arr = new int[3];
我的答案:1

以下的宣告产生几个对象?
int[][] arr = new int[2][3];
我的答案:2

以下产生几个对象?
Integer[] arr = new Integer[3];
我的答案:3

如上问题和我的答案,还请大家帮忙看下并稍作解释下


...全文
178 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
yinan9 2013-09-24
  • 打赏
  • 举报
回复
[quote=引用 hjw506848887 AA5279AA yzw19932010 crazypandariy [/quote] 林信良的java学习笔记上是这么解释的 1.声明了一个数组对象 2.3个对象:一个2维数组对象和两个单维数组对象 3. Integer[] [] arr=new Integer[2] [3] ; 这里也是3个数组对象,Integer对象均为NULL
yinan9 2013-09-24
  • 打赏
  • 举报
回复
[quote= hjw506848887, AA5279AA, yzw19932010, crazypandariy 林信良的java学习笔记上是这么解释的 1.声明了一个数组对象 2.3个对象:一个2维数组对象和两个单维数组对象 3. Integer[] [] arr=new Integer[2] [3] ; 这里也是3个数组对象,Integer对象均为NULL
yinan9 2013-09-24
  • 打赏
  • 举报
回复
[quote=hjw506848887 AA5279AA yzw19932010 crazypandariy [/quote] 林信良的java学习笔记上是这么解释的 1.声明了一个数组对象 2.3个对象:一个2维数组对象和两个单维数组对象 3. Integer[] [] arr=new Integer[2] [3] ; 这里也是3个数组对象,Integer对象均为NULL
  • 打赏
  • 举报
回复
就是刚才那样的啊,int[] i = new int[3];这是一个对象,而Integer[] i = new Integer[3],里面存的是三个对象啊。
疯狂熊猫人 2013-09-11
  • 打赏
  • 举报
回复
我认为三题均为一个对象。 int[] arr = new int[3]。创建一个数组对象 int[][] arr = new int[2][3];还是一个数组对象 Integer[] arr = new Integer[3];还是一个数组对象 后面的数字是分配存储空间,并不是创建对象。 个人见解。
yinan9 2013-09-11
  • 打赏
  • 举报
回复
引用 7 楼 hjw506848887 的回复:
可以举例说明一下吗?
  • 打赏
  • 举报
回复
引用 5 楼 yinan9 的回复:
[quote=引用 3 楼 hjw506848887 的回复:] [quote=引用 2 楼 yinan9 的回复:] [quote=引用 1 楼 hjw506848887 的回复:] int是原生类型,Integer是类,所以int i = 0;不能说成一个对象,Integer i = 0;就是对象了,而对于二维数组,其实就是两个一维数组啊。
那一个数据就是一个对象吗?[/quote]原生数据不是[/quote]
引用 3 楼 hjw506848887 的回复:
[quote=引用 2 楼 yinan9 的回复:] [quote=引用 1 楼 hjw506848887 的回复:] int是原生类型,Integer是类,所以int i = 0;不能说成一个对象,Integer i = 0;就是对象了,而对于二维数组,其实就是两个一维数组啊。
那一个数据就是一个对象吗?[/quote]原生数据不是[/quote] 不好意思,之前问题打错了,应该是一个数组就是一个对象?[/quote]也不是,你得看数给中存的是不是原生类型啊
yinan9 2013-09-11
  • 打赏
  • 举报
回复
引用 4 楼 AA5279AA 的回复:
第一题应该是实例化了一个数组对象和申明了3个数字对象,但是数字对象没有实例化。 第二题我感觉应该还是一个数组对象,这里的数组地址应该还是连续的 第三题我觉得应该是一个数组对象和三个数字对象。
谢谢,但是基础类型像int,char应该不算是对象吧?
yinan9 2013-09-11
  • 打赏
  • 举报
回复
引用 3 楼 hjw506848887 的回复:
[quote=引用 2 楼 yinan9 的回复:] [quote=引用 1 楼 hjw506848887 的回复:] int是原生类型,Integer是类,所以int i = 0;不能说成一个对象,Integer i = 0;就是对象了,而对于二维数组,其实就是两个一维数组啊。
那一个数据就是一个对象吗?[/quote]原生数据不是[/quote]
引用 3 楼 hjw506848887 的回复:
[quote=引用 2 楼 yinan9 的回复:] [quote=引用 1 楼 hjw506848887 的回复:] int是原生类型,Integer是类,所以int i = 0;不能说成一个对象,Integer i = 0;就是对象了,而对于二维数组,其实就是两个一维数组啊。
那一个数据就是一个对象吗?[/quote]原生数据不是[/quote] 不好意思,之前问题打错了,应该是一个数组就是一个对象?
失落夏天 2013-09-11
  • 打赏
  • 举报
回复
第一题应该是实例化了一个数组对象和申明了3个数字对象,但是数字对象没有实例化。 第二题我感觉应该还是一个数组对象,这里的数组地址应该还是连续的 第三题我觉得应该是一个数组对象和三个数字对象。
  • 打赏
  • 举报
回复
引用 2 楼 yinan9 的回复:
[quote=引用 1 楼 hjw506848887 的回复:] int是原生类型,Integer是类,所以int i = 0;不能说成一个对象,Integer i = 0;就是对象了,而对于二维数组,其实就是两个一维数组啊。
那一个数据就是一个对象吗?[/quote]原生数据不是
yinan9 2013-09-11
  • 打赏
  • 举报
回复
引用 1 楼 hjw506848887 的回复:
int是原生类型,Integer是类,所以int i = 0;不能说成一个对象,Integer i = 0;就是对象了,而对于二维数组,其实就是两个一维数组啊。
那一个数据就是一个对象吗?
  • 打赏
  • 举报
回复
int是原生类型,Integer是类,所以int i = 0;不能说成一个对象,Integer i = 0;就是对象了,而对于二维数组,其实就是两个一维数组啊。
william_yao 2013-09-11
  • 打赏
  • 举报
回复
引用 9 楼 hjw506848887 的回复:
就是刚才那样的啊,int[] i = new int[3];这是一个对象,而Integer[] i = new Integer[3],里面存的是三个对象啊。
Integer[] i = new Integer[3],里面没有往里面存,应该也还是一个对象吧?只不过开辟了那个空间。在堆内存。

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧