数组
数组是一个存放多个数据的容器
- 数据是同一种类型;
- 所有的数据是线性规则排列;
- 可通过位置索引来快速定位访问数据;
- 需明确容器的长度;
定义与初始化:
- int a[];//a,还没有new操作,实际上是null,也不知道内存位置;
- int[] b;//b,还没有new操作,实际上是null,也不知道内存位置;
- int[] c=new int[2];//c有2个元素,都是0;
- c[0]=10;c[1]=20;//逐个初始化;
- int d[]=new int[]{0,2,4};//d有3个元素,0,2,4,同时定义和初始化
- int d1[]={1,3,4};//d1有3个元素,1,3,5同时定义和初始化
注意,声明变量时候没有分配内存,不需要指定大小,以下是错误示例:
- int e[5];
- int[5] f;
- int[5] g=new int[5];
- int h[5]=new int[5];
数组索引
- 数组的length属性标识数组的长度;
- 从0开始,到length-1;
- int[] a=new int[5];//a[0]~a[4],a.length是5;
- 数组不能越界访问,否则会报ArrayIndexOutOfBoundsException异常;
数组遍历:两种方法:
![v2-b985e245cba35384940d8561e998167c_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/5d24430708aee61e8efe42afcc6b298c.jpeg)
多维数组
- 数组的数组
- 存储是按照存储原则
- 规则数组与不规则数组
![v2-476447a23dc4124bdf960b3834e0706f_b.png](https://i-blog.csdnimg.cn/blog_migrate/894eeb37ad36244354f71bb07a67cbba.png)
![v2-4e190ba88c60834aab7899ee708017a0_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/1d3f060c0b78ace313481a70814b7e5c.png)
![v2-a23e69d3a5e1ffcc9ab51d08cd9031c4_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/01f83286bda0a304cc49b7b974181b10.png)
![v2-65ae1baf32d16b709bb39e4c2c368413_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/e80a4c1d673bc6f91b83a503341163d5.png)