数组:相同类型数据的有序集合。
数组的三个特点:
- 长度是确定的
- 元素必须是相同的类型的
- 位置有序
数组属于引用类型
一维数组的声明方式:
type[] arr_name =new int[长度]; //方式一 type arr_name[]; //方式二
java中使用new关键字创建数组。
数组的属性length : 表示数组长度。
动态初始化:数组的定义与为数组元素分配空间并赋值的操作分开。
int a[] = null; a = new int[3]; a[0] = 3; a[1] = 9; a[2] = 8;
静态初始化:除了用new关键字来产生数组以外,还可以直接在定义数组的同时就为数组元素分配空间并赋值。
格式:
类型 [] 数组名 = {元素1[, 元素2 ……]};
int [] a = {1, 2, 3, 4, 5};
数组是引用类型,它的元素相当于类的实例变量,因此数组一经分配空间,其中的每个元素也被按照实例变量同样的方式被隐式初始化。
例如
int a[] = new int[2]; boolean [] b = new boolean[2]; String[] s = new String[2];
默认分配:0 0 ; false false;null null;
定义并用运算符new为之分配空间后,才可以引用数组中的每个元素;
数组元素的引用方式:arrayName[index]
数组的常用方法:
1)String Arrays.toString(数组);
2)void Arrays.sort(数组); //只能从小到大
3)int Arrays.binarySearch(数组,元素);数组查找
4)boolean equals(数组1,数组2)
5)数组 copyOf(源数组,长度)
6)void System.arraycopy(源数组,源起始索引,目标数组,目标起始索引,长度) :是属于java.lang.System类的静态方法
二维数组:
二维数组可以看成以数组为元素的数组。
Java中多维数组的声明 和初始化应按从高维到 低维的顺序进行,例如:
int [][] a= new int[3][]; a[0] = new int[2]; a[1] = new int[4]; a[2] = new int[3]; int t1[][] = new int[][4]; //非法
二维数组的初始化:
int intA[][] = {{1,2},{2,3},{3,4,5}}; int intB[3][2] = {{1,2},{2,3},{4,5}};//非法