day05 - 数组

数组

定义格式:

数据类型[]  变量名 = new 数据类型[长度];

数据类型 变量名[] = new 数据类型[长度];

数组名:存储的是数组变量的内存地址(首地址)

数组名.length : 数组的长度(.Length 是一种属性)

 

数组2  = 数组1

//是把数组1的内存地址给了数组2,使数组2也指向数组1 的内存地址以及其中的数据,以数组2[i] = a的方式修改数据,相应的数组1[i]也变成了a

初始化方式:

动态初始化:数据类型[]  变量名 = new 数据类型[长度];

静态初始化:数据类型[]  变量名 = {元素1,元素2......};

 

  如果程序一开始就确定了有哪些数据,那么这时候就建议使用静态初始化。

PS.两者内存图相同的,都会在堆内存中创建对象。

 

内存图:

栈内存:存储的都是局部变量,变量一旦出了自己的作用域,那么马上会从内存中消失,释放内存空间。

凡是以new关键字创建的对象,Jvm都会在堆内存中开辟一个新的空间,创建一个新的对象。

堆内存:存储的都是对象数据(引用类型数据),对象被使用完,并不会马上从内存中消失,而是等待垃圾回收器不定时的把垃圾对象回收,这时候该对象才会消失,释放内存。

局部变量:在一个方法的内部声明。

成员变量:定义在方法之外,类之内。

 

Array 数组工具包

 

二维数组的定义格式:

数据类型[][] 变量名 = new 数据类型[行数][列数];

 

数组名.length -> 二维数组的行数

数组名[i].length -> 二维数组第i行的列数

Java允许二维数组每行的元素个数不同

二维数组的初始化方式:

动态初始化:

数据类型[][] 变量名 = new 数据类型[长度1][长度2];

静态初始化:

数据类型[][] 变量名 = {{元素1,元素2...},{元素1,元素2...},{元素1,元素2...} ..}

 

posted @ 2017-01-12 18:17  张叉叉儿  阅读(64)  评论(0)    收藏  举报