数组
概念:多个相同数据的组合,用来实现这些数据的统一管理
数组中的元素可以是任意数据类型,包括基本数据类型和引用数据类型
数组属于引用数据类型,数组型数据是对象,数组中的每一个元素相当于成员变量
数组初始化与数组引用
初始化
动态初始化
数组声明并且为数组元素分配空间与赋值操作分开进行
静态初始化
在定义数组的同时就为数组元素分配空间并赋值
数组是引用类型,它的元素相当于类的成员变量,因此数组一旦分配空间,就会按照成员变量的方式执行(隐式)默认初始化;
对于基本数据类型数组,默认初始化值与数据类型默认值一致;
对于引用数据类型数组,默认初始化值为null
数组元素引用
定义并采用运算符“new”为数组分配空间之后,才可以引用数组中的元素
引用方式:数组名[数组元素下标]a[3]、a[i]、c[7*8]、d[6*i]
数组长度
每一个数组都有一个属性(length)指明其长度,a.length;
数组一旦初始化,其长度将不再可变化;
java.lang.ArrayIndexOutOfBoundsException
一维数组、多维数组
一维数组
声明格式:
type var[]或者type[] var;
多维数组:数组中的数组
声明格式:
动态初始化:
type[][] 数组名 = new type[m][];
type[][] 数组名 = new type[m][n];
静态初始化:
type[][] 数组名 = new type[][]{{m,n,k…},{m,n,k},{m,n}…}
特殊写法:
int[]x, y[];
中x是一维数组,y是二维数组;
数组涉及的常见操作
求和
最值
将数组转成字符串
排序
数组元素排序
Java中提供了一个操作数组的工具类java.util.Arrays
Arrays.equals(): 比较两个数组是否相等
Arrays.fill(k): 将值k填入数组中
Arrays.sort(数组): 用来对数组排序
binarySearch(): 在排序好的数组中查找元素,第一次出现的位置
toString(): 将数组转换为字符串