Java中数组分为一维数组、二维数组、三维数组、多维数组,最常用的是一维、二维数组,其他感觉用的很少,这篇博客主要讲解
下数组的创建使用等功能
一:一维数组
1:创建及访问
先声明再进行内存分配,声明的方式为:
数组元素类型 数组名字[] /数组元素类型[] 数组名字
数组声明完成后还不能立即访问它的任何元素,因为声明数组只是给出了数组的名字及元素的数据类型,要想真正使用数组需要
为它分配内存空间以及指定数组长度。
分配内存空间及指定数组长度:
数组名字 = new 数组元素类型[数组元素的个数];
分配内存空间后可立即为数组进行赋值并使用,例:
int arr[] = new int[4];
arr[0] = 1;
arr[1] = 2;
arr[2] = 3;
arr[3] = 4;
arr数组为int的数据类型,共包含3个元素,除此种方式外,数组的创建还分如下2种方式:
int arr[] = new int[]{1,2,3,4};
或
int arr[] = {1,2,3,4};
不需要指定数组长度,直接进行赋值即可,访问元素方式一致,使用for循环进行输出每个元素
for(inti=0;i<arr.length;i++){
Log.e("数组","第"+(i+1)+"个数="+ arr[i]);
}
输出结果:
01-29 13:48:39.592 6003-6003/com.sotp.application E/数组: 第1个数=1
01-29 13:48:39.592 6003-6003/com.sotp.application E/数组: 第2个数=2
01-29 13:48:39.592 6003-6003/com.sotp.application E/数组: 第3个数=3
01-29 13:48:39.592 6003-6003/com.sotp.application E/数组: 第4个数=4
二:二维数组
1:创建及访问
声明方式与一维数组相同:
数组元素类型 数组名字[][];/数组元素类型[][] 数组名字;
分配内存空间方式:
直接为每一维分配内存空间,第一个维度表示行,第二个表示列,这种情况下每行的列数是相等的,不足位默认为0
int arr[][] = new int [2] [3];
01-29 17:53:02.705 5177-5177/com.sotp.application E/数组: 元素1
01-29 17:53:02.705 5177-5177/com.sotp.application E/数组: 元素2
01-29 17:53:02.705 5177-5177/com.sotp.application E/数组: 元素0
01-29 17:53:02.705 5177-5177/com.sotp.application E/数组: 元素3
01-29 17:53:02.705 5177-5177/com.sotp.application E/数组: 元素4
01-29 17:53:02.710 5177-5177/com.sotp.application E/数组: 元素5
分别为每一维分配内存空间,不规则的二维数组
int arr[][] = new int[2][];
arr[0] = new int[2];
arr[1] = new int[3];
如上图所示,arr[0]的一维数组长度等于2,arr[1]的一维数组长度等于3,赋值并进行访问方法为:
arr[0][0] =1;
arr[0][1] =2;
arr[1][0] =3;
arr[1][1] =4;
arr[1][2] =5;
for(inti=0;i<arr.length;i++){
for(intj=0;j<arr[i].length;j++){
Log.e("数组","元素"+ arr[i][j]);
}
}
输出结果:
01-29 17:47:15.600 30071-30071/com.sotp.application E/数组: 元素1
01-29 17:47:15.600 30071-30071/com.sotp.application E/数组: 元素2
01-29 17:47:15.600 30071-30071/com.sotp.application E/数组: 元素3
01-29 17:47:15.600 30071-30071/com.sotp.application E/数组: 元素4
01-29 17:47:15.600 30071-30071/com.sotp.application E/数组: 元素5
一维/二维数组的创建及使用就说到这里,下章讲解数组的基本操作类——Arrays