目录
数组
数组也是一个对象,所以它被存放在堆(heap)中。
一维数组
数组的声明
int[] array;
这只是声明了一个数组的引用,只是在堆中建立起了一个可以用来指向一个整数数组的引用,并没有真正分配数组的内存。
真正创建对象数组要用new
数组的创建
array = new new int[4];
或直接 int[] array = {1,2,3,4,5};
数组的初始化
1. 基本数据类型数组
语句 int[] ints = new int[4];
执行完后,因为int类型数组初始化的缺省值为0,因此内存中现在就已经有了4个int(即0)
语句 char[] chars = new char[4];
char类型数组初始化的元素缺省值为‘\0’,是一个不可见字符。现在内存里面已经有4个char(即‘\0’)
语句 bool[] bools new bool[4];
bool类型数组的元素缺省值为false。现在内存里面已经有4个bool值(即false)
2. 对象类型数组
语句 String[] str = new String[4];
因为在string这种对象类型数组中存放的是一个对象的引用。所以在该语句执行完后,内存中一个String都没有。这一点与基本数据类型数组不同。
多维数组
多维数组在java内存中的存放