五、Java数组
5.1 Java数组是引用类型
数组本身是引用数据类型,但数组中的元素可以是基本数据类型,也可以是引用类型
5.2 一维数组的声明
数组元素类型 【】 变量名称;或
数组元素类型 变量名称 【】;
eg: int【】 a;或int a 【】;
5.3 一维数组的初始化
数组元素类型【】 变量名称=new 数组元素类型【数组长度】;
数组元素类型【】 变量名称=new 数组元素类型【】{用逗号隔开元素的具体值};
数组元素类型【】 变量名称={用逗号隔开元素的具体值};
a1的长度为5,元素的默认值是0 int a=new int【5】; a2的长度为3,元素的值为1,4,10 int 2=new int【】{1,4,10}; a3的长度为4,元素的值为2,3,4,5 int【】 a3={2,3,4,5};
5.4 数组的长度
使用 数组变量名.length可以返回数组的长度
5.5 数组的排序
5.5.1选择排序
选择排序的主要思想是寻找未排序中最小的元素加入到已有序列,直到未排序序列为空
5.5.2 冒泡排序
冒泡排序主要的思想是进行相邻的两个元素之间比较并且交换,有利于利用原有元素在集合中的位置优势,冒泡排序的原则是大的下沉小的上浮(跟最终的排序要求保持一致)
5.5.3 插入排序
插入排序与选择排序类似,需要将数组分为有序与无序两部分。但插入不会去到无序部分选择,而是随意选取一个无序部分元素到有序部分中寻找它所在的位置进行插入保持有序部分仍然有序
5.6 多维数组
二维数组的声明创建形式如下
数组元素类型[ ][ ] 变量名称=new 数组元素类型[一维长度] [二维长度];
①如果同时确定一维和二维的长度,则表示数组的元素是等长的一维数组;
int[][] a=new int[2][3]; //数组a中存储2个一维数组,每个一维数组的长度都是3
②如果数组元素不是等长的一维数组,可以不指定二维长度;
int[][] b=new int[2][]; //数组吧中存储2个一维数组,每个一维数组长度不确定
5.7 数组工具
Java API中有一个类Arrays,定义了大量的sort方法。可以对数组中元素进行排序
equals():比较两个array是否相等
sort():用来对array进行排序
binarySearch():在排好序的array中寻找元素