一、定义
数组:数组是相同类型数据的有序集合。每一个数据都是数组的一个元素,可以通过下标来访问它们。
二、声明与创建
- 两种方式:
//方式一
int[] nums;//声明
nums = new int[10];//创建
//方式二
int[] nums2 = new int[10];//声明和创建
三、初始化
1、静态初始化(一经创建不可以改变)
int[] a = {1,2,3,4,5,6,7};//静态初始化会直接赋值,且之后不可改变
2、动态初始化
int[] a = new int[10];
a[0] = 1;//此时给a数字的第一个元素进行赋值,为1
//其他位置元素不赋值则为默认值,如int默认值为0,float默认值为0.0f
四、小结
数组的四个基本特点:
- 长度是确定的。一旦创建,数组的长度不可更改
- 数组内元素类型必须相同。不能是混合类型的。
- 数组内元素可以是任何类型,包括引用类型和基本类型(9种:byte、short、char、int、long、float、double、String、boolean)。
- 数组变量属于引用类型,数组也可以看成是对象,数组内的元素可以堪称是对象中的成员变量。数组本身就是对象,Java中对象是储存在堆中的,因此数组无论是保存原始类型还是其他对象类型,数组对象本身都是在堆中的。
五、二维数组
1、形式
int array[][] = new int[2][5]//表示创建一个2行5列的二位数组
具体理解见下图:
2、Arrays工具类
常用功能:
-
给数组赋值:fill,只能把同一个元素填充到数组中
int[] a = new int[5]; Arrays.fill(a,3); 结果为: [3, 3, 3, 3, 3]
-
堆数组排序:sort,按升序排序
-
进行数组比较:equals,比较数组中元素是否相等
-
查找数组元素:binarySearch方法能对排序好的数组进行二分查找法操作
- 注意点1:首先得对数组进行排序,不排序会有输出错误
- 注意点2:若数组中有重复元素,也会有输出错误