Day05
数组
一维数组
数组的理解:数组(Array),是多个相同类型数据按一定顺序排列的集合,并使用一个名字命名,并通过编号的方式对这些数据进行统一管理。
数组相关的概念:
-
数组名
-
元素
-
角标、下标、索引
-
数组的长度:元素的个数
数组的特点:
-
数组是有序排列的
-
数组属于引用数据类型的变量。数组的元素,既可以是基本数据类型,也可以是引用数据类型
-
创建数组对象会在内存中开辟一整块连续的空间
-
数组的长度一旦确定,就不能修改。
数组的分类:
-
按照维数:一维数组、二维数组、。。。
-
按照数组元素的类型:基本数据类型元素的数组、引用数据类型元素的数组
一维数组的使用:
-
一维数组的声明和初始化
-
如何调用数组的指定位置的元素
-
如何获取数组的长度
-
如何遍历数组
-
数组元素的默认初始化值 :见ArrayTest1.java
//数组元素的默认初始化值 int[] a = new int[4]; float[] b = new float[]{1.1,1.2,1.3,1.4}; char[] c = {'a’,’b’,’c’, ’d’}; //数组元素是整型:0 //数组元素是浮点型:0.0 //数组元素是char型:0或'\u0000',而非'0' //数组元素是boolean型:false //数组元素是引用数据类型:null
二维数组
理解:对于二维数组的理解,我们可以看成是一维数组array1又作为另一个一维数组array2的元素而存在。其实,从数组底层的运行机制来看,其实没有多维数组。
二维数组的使用:
-
二维数组的声明和初始化
//静态初始化 int[][] arr1 = new int[][]{{1,2,3},{4,5},{6,7,8}}; //动态初始化1 String[][] arr2 = new String[3][2]; //动态初始化2 String[][] arr3 = new String[3][];
-
如何调用数组的指定位置的元素
System.out.println(arr1[0][1]);//2 System.out.println(arr2[1][1]);//null
-
如何获取数组的长度
//获取数组的长度 System.out.println(arr1.length);//3 System.out.println(arr1[0].length);//3 System.out.println(arr1[1].length);//2
-
如何遍历数组
for(int i = 0;i < arr1.length;i++){ for(int j = 0;j < arr1[i].length;j++){ System.out.print(arr1[i][j] + " "); } System.out.println(); }