献给小白的笔记day5
1.1 数组的定义
- 数据类型[] 数组名(推荐)
- 数据类型[]数组名 int[]arr :定义了一个int类型的数组,数组名叫arr
- 数据类型 数组名 []:int arr []定义了一个int类型的变量,变量名叫arr的数组
- int arr[]:定义了一个int类型的变量,变量名叫arr数组
1.2 数组的初始化
-
动态初始化:
动态初始化数组 数据类型[]数组名=new 数据类型 [数组长度];
-
静态初始化(标准)
静态初始化 数据类型 [] 数组名=new数据类型[]{元素1,元素2.....元素n};
-
静态初始化(简化)
静态初始化(简化) 数据类型 [] 数组名={元素1,元素2.....元素n};
1.3 数组的访问
- 索引:给数组中元素依次做的编号,从0开始,到数组长度-1
- 数组的访问,索引,从0开始,一直到数组的长度-1;
- 格式:数组名[索引值]
1.4 JVM内存划分
-
寄存器:和CPU有关,和开发无关 寄存器,和cpu有关,与开发无关
-
本地方法栈:和操作系统有关,和开发无关 本地方法栈和操作系统有关,与开发无关
-
方法区:可以运行的.class文件 方法区,可以运行的。class文件
-
栈内存:正在运行的方法 站内存,正在运行的方法
-
堆内存:存储new出来的对象或者数组 堆内存 new出来的数组或者对象
-
堆内存中的数据都有地址值,也有默认值
- 堆内存中的数据都有地址值 整数0
浮点0.0 字符/u0000 布尔false 引用null - 堆内存中的数据都有默认值
- 整数:0
- 浮点:0.0
- 字符:‘\u0000’或者空白字符
- 布尔:false
- 引用:null
- 堆内存中的数据都有地址值 整数0
1.5 数组的两个小问题
- 数组索引越界异常:访问不存在的索引
- 索引异常,访问不存在的索引
- 空指针异常,访问数组的元素时候,该数组没有再堆空间开辟空间
1.6 数组的遍历
- 动态获取数组的长度:数组名.length