黑马程序员技术交流社区

标题: 数组声明的问题 [打印本页]

作者: 张涛的狂怒    时间: 2014-7-26 11:54
标题: 数组声明的问题
本帖最后由 张涛的狂怒 于 2014-8-6 09:57 编辑

在数组声明的时候,有的地方会写成“int array[]=null”,为什么要写上null呢?
作者: icris    时间: 2014-7-26 14:34
成员变量有默认初始化值,  局部变量没有默认初始化值。
所以局部变量不初始化会报错,成员变量写不写都行写了也没坏处,最好养成习惯,定义的时候写上初始化(null 和 0 )

作者: 刘小记.    时间: 2014-7-26 14:44
null  说明数组没有实例化,没有指向任何对象,没被分配空间
如果加{}就已经分配了一个空间,实例化了
作者: hejinzhong    时间: 2014-7-26 15:00
数组是引用类型数据
作者: vaqh    时间: 2014-7-26 15:03
int array[]只是声明了一个引用,它没有具体指向,它要么指向null要么指向new int【xx】,对于成员函数来说它是 有默认值的,这个默认值就是null,所以当它是成员函数时你可以不给它赋值为null;但是对于局部变量它是没有默认值的,你必须为其赋初值,否则这个变量时不能使用的,所以为了防止出错在定义局部变量时要写成int array【】=null。所以为了保险起见你可以都写成int array[ ]=null。
作者: 肖同超    时间: 2014-7-26 21:16
int array[]存储在栈中,需要初始化,




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2