1.数组定义格式
数组:是一种用于存储多个相同类型数据的存储模型。
定义格式:
格式一:数据类型 [ ] 变量名
例: int [ ] arr
定义了一个 int 类型的数组,数组名是 arr
格式二: 数据类型 变量名 [ ]
例:int arr [ ]
定义了一个 int 类型的变量,变量名是 arr 数组
数组初始化之动态初始化
数组初始化方式:
动态初始化:初始化时只指定数组长度,由系统为数组分配初始值;
格式: 数据类型 [ ] 变量名 = new 数据类型 [ 数组长度 ];
例: int [ ] arr = new int [ 3 ] ;
静态初始化:
3.数组元素访问
数组变量访问方式
格式:数组名
数组内部保存的数据的访问方式
格式:数组名 [索引]
索引是数组中数据的编号方式
作用:索引用于访问数组中的数据使用,数组名 [索引]等同于变量名,是一种特殊的变量名
索引特征:
1.从0开始
2.连续的
3.逐一增加,每次加1
4.内存分配
Java中的内存分配:Java程序在运行时,需要在内存中分配空间。为了提高运算效率,就对空间进行了不同区域的划分,因为每一片区域都有特定的处理数据方式和内存管理方式。

5.数组初始化之静态初始化
静态初始化:初始化时指定每个数组元素的初始值,由系统决定数组长度
格式:数据类型 [ ] 变量名 = new 数据类型 [ ] {数据1,数据2,数据3,…} ;
例: int [ ] arr = new int [ ] {1,2,3};
简化格式:数据类型 [ ]变量名 = {数据1,数据2,数据3,…};
例:int [ ] arr = {1,2,3};
6.数组操作的两个小问题
1.索引越界:访问了数组中不存在的索引对应的元素,造成索引越界问题
2.空指针异常:访问的数组已经不再指向堆内存的数据,造成空指针异常
null : 空值,引用数据类型的默认值,表示不指向任何有效对象。
7.数组常见操作
1.遍历
2.获取数组元素数量
格式: 数组名.lengh
例:arr.length
int[] arr = {1,22,33,44,55,77,588};
for(int i = 0;i < arr.length;i++){
System.out.println(arr[i]);
}
3.获取最值
int[] arr = {1,22,33,44,55,77,588,56,86}; //定义数组
int max = arr[0]; //定义一个变量,保存最大值
//与数组中的剩余数据逐个比较,每次比对将最大值保存到变量中
for(int i = 1;i < arr.length;i++){
if(arr[i]>max){
max = arr[i];
}
}
System.out.println("max:" + max);