数组
作用:在变量的基础上实现多个相同类型的数据存储,组成一个新的整体。实用性高。
类别:一维数组,二维数组,多维数组
一维数组
语法:
-
数据类型[] 数组名称 = {值1,值2};
int[] age1 = {20,19,18,20}; //数组在初始化时就完成赋值,并且数组的长度由值来决定 System.out.println("age1="+age1);//age1=[I@15db9742
-
数据类型[] 数组名称 = new 数据类型[]{值1,值2};
int[] age2 = new int[]{20,19,18,10}; System.out.println("age2="+age2);//age2=[I@6d06d69c
1、2两种定义方式并无区别;
-
数据类型[] 数组名称 = new 数据类型[长度];
/** *属于一种在定义数组的时候没有初始化值的一种行为,但数组开辟了指定长度的空间。 */ int[] age3 = new int[4];//在内存中堆所对应的地址的数组长度为4;在堆开辟了空间,但是还没有常量池的引用。
引用:
int[] ay1 = {1999,1998,1997};
int[] ay2;
//将ay1的数组地址引用赋值给ay2,实现两个数组共享一个内存地址。
ay2 = ay1;
ay1[1] = 2000;
//此时ay2[1]=2000;
二维数组
语法
数据类型[][] [] [] 数组名称 = new 数据类型[长度1] [长度2]
长度1:当前二维数组存放的数组个数
长度2:当前二维数组存放的数组的长度
int[][] ay = new int[3][5];
ay[1][2] = 20;
for(int i = 0 ;i<ay.length;i++) {
for(int j = 0;j<ay[i].length;j++) {
System.out.println(ay[i][j]);
}
}
//定义及输出