数组概念
数组(Array)是多个相同类型数据一定顺序排列的集合,并使用一个名字命名,并通过编号的方式对这些数据进行统一管理
数组的特点
1. 数组是序排列的
2. 数组属于引用数据类型的变量,数组的元素既可以是基本数据类型也可以是引用数据类型
3. 创建数组对象会在内存中开辟一整块连续的空间
4. 数组的长度一但确定,就不能修改
数组的分类
按照维数分类:
1. 一维数组
2. 二维数组
按照数组元素分类
1. 基本数据类型元素的数组
2. 引用数据类型元素的数组
一维数组的声明和初始化
静态:
int[] arr = new int[]{1,2,3};
int[] arr1 = {1,2,3};
动态:
int[] arr = new int[3];
一维数组元素的引用
通过角标的方式调用(数组的角标或索引从 0 开始,到数组的长度 -1 结束)
数组的属性
1. 数组一旦初始化,长度就是确定的(长度是 arr.length)
2. 数组长度一旦确定,就不可以修改
一维数组元素的默认初始化值
1. 数组元素是整型:0
2. 数组元素是浮点型:0.0
3. 数组元素是char型:0
4. 数组元素是boolean型:false
5. 数组元素是引用数据类型:null
二维数组的声明和初始化
静态:
int[][] arr = new int[][]{{1,2},{3,4},{4,5,6}};
int[][] arr1 = {{1,2},{3,4},{4,5,6}};
动态:
int[][] arr = new int[3][4];
int[][] arr1 = new int[3][];
二维数组元素的默认初始化值
针对初始化方式一:int[][] arr = new int[4][3];
1. 外层元素(如:arr[0]
)的初始化值:地址值
2. 内层元素(如:arr[0][0]
)的初始化值:与一维数组初始情况相同
针对初始化方式二:int[][] arr = new int[4][];
1. 外层元素(如:arr[0]
)的初始化值:null
2. 内层元素(如:arr[0][0]
)的初始化值:不能调用,否则报错