标签:ima 数据类型 存储空间 引用数据类型 单元 loading load 个数 alt
int array[] = new int[3]; array[0] = 1; array[1] = 2; array[2] = 3;
int []array = {1,2,3,4,5};
??用以下代码分析内存:
int []id = new int[3]; id[1] = 12; id[2] = 56; id[3] = 45;
??定义数组后:
??数组赋值以后:
??从上不难看出:当创建一个数组是(即new一个数组),首先在栈空间出现数组名,在堆空间开辟出连续的存储空间,并且数组名指向连续存储空间的首地址,存储空间的存储值均为默认值。
int [][]array = new int[3][2];
??实际上即使有一个一维数组(也可以理解为三个一维数组),数组有三个元素,这三个元素均为数组,且数组均存了两个元素;图示如图:
??1.2、动态初始化格式二:
int [][]array = new int[3][];
??这里与方式一不同,方式一是一维数组的三个元素均为数组,而这里三个元素均为null,可以对每个一维数组进行初始化:
array[0] = new int[3]; array[1] = new int[6]; array[2] = new int[8];
??二维数组的内存实则和一维数组没有本质区别。只是将一维数组存的数据改为了另一个数组的首地址。
标签:ima 数据类型 存储空间 引用数据类型 单元 loading load 个数 alt
原文地址:https://www.cnblogs.com/yblBlog/p/13378105.html