Java学习 ---- Day7
Day7
引用类型: 数组类型 类类型 接口类型
什么是数组?
-
一组数 一组数的集合 数组中的每一个数据 我们把它称为元素 ,数组 是 java 引用数据类型的一种 一个数组 也是一个 java对象
-
可以把数组 理解成一个 盛放数据的容器 , 和之前的基本类型的变量的容器的区别是 这个数组容器 可以存放管理多个 相同类型的数据。
-
数组中 存放的数据类型可以是任意类型 (包括基本类型 和 对象类型) , 但是 一个数组 只能存放同一种数据类型 而且 长度是固定的。
-
每个数组元素 可以通过下标来访问 ???
-
咱么可以通过数组名来统一管理 这组数据 数组中的每个数据成为是数组的元素 通过下标操作
-
int[] arr = new int[10]; arr 就是 数组名
-
向数组中存放元素: arr[index] = value; 向数组的 index 索引处 存放value 值
-
从数组中取数据 arr[index] 去出索引为 index 的 元素
-
也就是 通过 数组名 + index (索引、下标) 来访问数组中的元素
-
数组的特点: 只能存放同一种类型的数据
-
长度固定 如果访问超出最大索引 会报 数组越界异常
-
可以存放任意类型的数据(基本数据类型和引用类型)
-
每个数组元素 都有默认值
*数组的内存图
-
栈内存 stack 存放数组名 局部变量 没有默认值 方法执行完 立即释放空间 先进后出的结构 比如手枪的 弹匣
-
堆内存 heap 存放数组对象 数组元素 每个元素都有默认值 方法执行完后 不会立刻释放资源 而有垃圾回收器负责回收 程序员不用
-
操心这个事, 什么时间垃圾回收 不确定
-
总结: 数组 是 相同类型数据的 有序集合 这个序指的是索引顺序, 数组会在内存中开辟一块连续的内存空间
-
每个空间 相当于之前的变量, 称为数组的元素 ,元素如何表示 ? 数组名[下标] arr[1] arr[0]
-
索引 从0 开始 每个数组元素 有默认值
-
数值类型的默认值 0 boolean false String null
-
数组有一个属性 length 表示 数组的长度
语法:
- int[] arr; // 在栈内存声明了 一个int 类型的数组变量 值不确定 还没有分配空间
- int[] arr = new int[10]; 在堆内存中 分配10个连续空间 每个元素都是int 类型 4个字节 默认值是 0
- 并且 把首元素的内存地址值赋值给 占内存中的 变量 arr
数组的初始化
- – 动态初始化
-
数据类型[] 数组名 = new 数据类型[length]; 确定了数组的长度 和 数组元素的默认值
- –静态初始化
-
数据类型[] 数组名 = {元素1,元素2,元素3,,.....};
-
数据类型[] 数组名 = new 数据类型[]{元素1,元素2,元素3,.....};
New关键字在对内存开辟空间 存数据
数组中的元素相当于类的实例变量
上一篇: 前端学习day7
下一篇: Java方法能定义多少个参数你知道吗