作用:就像一个容器,用于在程序中存储一批同种类型的数据。
定义:
1,静态化初始数组:格式:数据类型[] 数组名称=new 数据类型[]{元素一,元素二,元素三......}或数据类型[] 数组名称={元素一,元素二,元素三......}
特点:在定义数组的同时为数组确定了数据
使用场景:一旦确定了数据的具体值,我们就用这种方式存储批量数据。
2,动态化初始数组:格式:数据类型[] 数据名称=new 数据类型[长度]
特点:一开始之确定了数组的长度和类型,不确定具体存入的数据值。
使用场景:适合一开始不能确定具体数据的情况。——先定义数组,后赋值数据进去。
存在默认值:
数组的访问:
1:格式——数据名称[索引]
2: 取值——int m=arr[1];
3 : 赋值——arr[1]=222;
4: 长度——arr.length
数组的注意事项:什么类型的数组只能存放什么类型的;数据类型[] 变量名称 可以写成 数据类型 变量名称[];数组一旦定义出来,程序执行的过程当中,长度,类型就固定了。
数组的遍历:一个一个的访问
int[] ages={20,30,40,50}
for(inti=0;i<age.length;i++){
System.out.println(ages[i]);
}
数组的内存图:方法区:放class文件;栈内存:运行的方法,main方法,定义的变量;堆内存:new出来的对象,都在堆内存中。
数组使用的常见问题:1:不要访问超过数组的最大索引。——否则会出现数组访问越界异常
2:空指针异常问题:int[] arr=null;——System.out.println(arr);//null Sysem.out.println(arr.length);//空指针异常