普通的for循环遍历数组:
eg:
输出结果:
然而 这种普通的for循环遍历数组 都需要三个条件:初始化,条件判断,递增/递减。这样就会显得代码有些冗余。
因此Java提供一种新型的for循环来方便遍历数组:
eg:
![](https://i-blog.csdnimg.cn/blog_migrate/1f7095399d6ca3a605093c743985b475.png)
输出结果:
看到这里,想必不少小伙伴们一头雾水,别急,且听我慢慢道来:
首先 增强型for循环的格式如下:
for( 数据类型 变量名 : 数组名)
值得注意的是变量的数据类型一定要与数组的数据类型保持一致
举个错误的例子:
很显然,直接报错。
其次,小伙伴们要知知道,这个变量就相当于数组里面的元素,而不是索引!!!
还有 大家要知道“ :”后面跟的是数组名。
看到这里,小伙伴们可能就明白了,甚至有些嘲讽:就这?就这?
那行 咱们上个难度,二维数组怎么用增强for循环遍历?
既然是二维的 ,肯定要用两个for进行遍历吧。
括号里面该填什么呢?
答案如下:
输出如下:
懵了没? 小编学到这也是一脸懵。
大家仔细想想:
普通的for循环是怎么遍历二维数组的?外层循环遍历行,内层循环遍历列。
增强for循环亦是如此。
那么小编想问,对于二维数组,它的本质什么?其实就是一维数组,只不过该数组元素还是一个一维数组
所以外层循环 定义变量时 定义的是一个数组 。for(int []i:arr)这样就遍历到了数组的行。
而列的遍历 ,跟一维遍历一样。for(int j:i)
总之,增强for循环要注意的时,变量类型和数组类型要相同,同时“:” 后跟数组名!!!