1、数组的基本特点:
(1)数组的长度时确定的,一旦被创建,它的大小就是不可改变的。
(2)元素必须是相同类型,不允许出现混合类型。
(3)数组中的元素可以是任何数据类型,包括基本类型和引用类型。
(4) 数组变量属于引用类型时,数组也可以看成是对象,数组中的每个元素相当于该对象的成员变量。
注意:数组本身就是对象,Java中对象是在堆中,因此数组无论保存原始类型还是其他对象累心,数组对象本身就是在堆中的。
2、多维数组
多维数组可以看成是数组的数组,比如二维数组就是一个特殊的一维数组,它的每个元素都是一个一维数组。
例如 二维数组:int a[ ] [ ] = new int [2][5];
多维数组的定义及输出:
public class Demo04 {
public static void main(String[] args) {
int[][] array = {{1, 2}, {3, 4}, {5, 6}, {7, 8}};
System.out.println("数组长度:" + array.length);
System.out.println(array[0][0]);
for (int i = 0; i < array.length; i++) {
for (int j = 0; j < array[i].length; j++) {
System.out.print(array[i][j]);
}
System.out.println();
}
3、数组的工具类java.util.Arrays
Arrays类中的方法都是static修饰的静态方法,在使用时可以直接使用类名进行调用。
具有以下常用功能:
(1)给数组赋值:通过fill方法
(2)对数组排序:通过sort方法,按升序;
(3) 比较数组:通过equals方法比较数组中元素值是否相等。
(4)查找数组元素:通过binarySearch方法能对排序好的数组进行二分查找法操作。
4、稀疏数组:当一个数组中大部分元素为0,或者为同一值的数组时,可以使用稀疏数组来保存该数组。
稀疏数组的处理方式是:(1)记录数组一共有几行几列,有多少个不同值。(2)把具有不同值的元素和行列及值记录在一个小规模的数组中,从而缩小程序的规模。
例如:一个5行6列的数组中有2两个有效数字,则可以表示为一个二维数组,a【0】={5,6,2},表示原数组的行列数及有效数字数。a[1] = {n,m,66} 表示第n行第m列数字为66.