数组:多个相同类型的数据集合,并对这些数据统一管理
数组变量属于引用类型,数组也可以看成是对象。
数组中的元素可以是任何数据类型,包括基本基本类型和引用类型。
一位数组声明: type name[] 或type[] name 。但实际上用的最多的是后者,它可以同时声明多个一维数组。并且在《阿里巴巴java编写规范》中强制使用第二种。
java语言中声明数组时不能指定其长度。如int a[5]是错误的写法。(与c/c++不同)
java中使用new关键字创建数组对象,格式:name =new type[数组元素个数]
内存分析:
int[] s时在栈中开辟一个内存空间,因为没有对其初始化,所以此时没有引用值,当s=new int[5]在堆中开辟5个连续的内存空间,且其初始值都为0,此时s的引用值指向新开辟空间。
当数组元素为引用类型时:
在栈内存中开辟一个空间
当new后,在堆内存开辟3个连续的内存空间,因为是引用类型,系统会自动设置其默认值为null
当实例化每个数组中的引用类型时,计算机又会在堆内存中开辟内存空间,且数组中的引用类型会指向新开辟的内存空间。