为什么需要数组?
1.数组的表示
java int a[5] = {1,2,3,4,5};
int表示数组元素类型为整形,a是数组的名字,5表示数组元素的个数,这五个元素分别用a[0]——a[4]表示。
2.为什么需要数组?
- 为了解决大量同类型数据的存储(连续的存储空间)和使用问题。
- 为了模拟现实世界
3.为什么数组不常用?
因为对数组的操作比较复杂,如排序,交换次序。我们使用的通常是别人开发的以数组为基础的工具。
数组的分类
一维数组
1.定义
为n个变量分配连续的存储空间,所有变量的数据类型相同,所占字节大小相等。
例:
java int a[5];
2.初始化
- 完全初始化(只有在定义的时候才可以整体赋值):int a[5] = {1,2,3,4,5};
- 不完全初始化(未被初始化的元素自动为零):int a[5] = {1,2,3};
- 不初始化(所有元素为垃圾值):int a[5] ;
- 清零:int a[5] = {0};
二维数组
1.定义
一维数组可以看作一条队列,二维数组可以看成一个方阵。
例:
java int a[3][4];
可以看成一个三行四列的矩阵,共十二个元素用a[0][0]到a[2][3]表示。a[i][j]表示第i+1行第j+1列元素。
2.初始化
int a[3][4] = {1,2,3,4,5,6,7,8,9,10,11,12} ;
int a[3][4] = {{1,2,3,4},{5,6,7,8},{9,10,11,12}} ;
- 还有很多初始化方式,需要的话自行百度;
多维数组
由于内存是线性一维的,所以理论上是没有多维数组的。n维数组相当于每个元素都是一个n-1维数组。
例:
- 二维数组 a[3][4]相当于三个含有四个元素的一维数组构成的一维数组,或者说是元素类型为 含有四个整形元素的一维数组 的一维数组。
- 三维数组 a[3][4][5]相当于三个45的二维数组构成的数组,或者说是元素类型为 43的二维数组 的一维数组。