• 数据类型[] 数组名称 = new 数据类型[数组的长度]; 如:int[] arr1 = new int[2]; 还可以int arr1[] = new int[2];
• 调用数组的length属性可以获取数组的长度;如:arr1.length();
• 可以通过下标的方式访问数组中的每一个元素。如:arr1[0],获取第0个元素,默认为0
注意:数组的 下标从0开始,对于长度为n的数组,下标的范围是0~n-1。若超出边界,运行发生ArrayIndexOutOfBoundsException数组下标越界异常。
一维数组的初始化方式• 基本类型的数组(数据元素为基本类型)创建后,其元素的初始值:byte、 short、char、int、long为0;float和double为0.0;boolean为false。
• 可以在数组声明的同时进行初始化,具体如下: 数据类型[] 数组名称 = {初始值1, 初始值2, ...}; 如:char[] arr3 = {'a', 'b', 'c', 'd'};
数组的优缺点• 可以直接通过下标(或索引)的方式访问指定位置的元素,速度很快。
• 数组要求所有元素的类型相同。
• 数组要求内存空间连续,并且长度一旦确定就不能修改。
• 增加和删除元素时可能移动大量元素,效率低。
常用方法
int[] arr1 = {10, 20, 30, 40, 50};
int[] arr2 = new int[5];
Arrays.fill(arr2, 10);// [10, 10, 10, 10, 10]
System.out.println("第一个数组中的元素有:" + Arrays.toString(arr1));
System.out.println(Arrays.equals(arr1, arr2));
Arrays.sort(arr1);
System.out.println(Arrays.toString(arr1));
System.out.println("20的位置是:" + Arrays.binarySearch(arr1, 20));二维数组 本质上就是由多个一维数组摞在一起组成的数组,二维数组中 的每个元素都是一维数组,而一维数组中的每个元素才是数据内容。 二维数组的声明和初始化方式
• 数据类型[][] 数组名称 = new 数据类型[行数][列数]; 如:int[][] arr1 = new int[2][3];
• 数据类型[][] 数组名称 = {{元素1, 元素2,...}, ...}; 如:int[][] arr2 = {{11, 22, 33, 44}, {55, 66, 77, 88}};