1. foreach 主要功能:用于循环访问容器中的数据,功能和for循环相同.
Demo:

package com.example.testthree;

public class MyClass {
    public static void main(String[] args){
        int [] temp = {1,5,6,2};
        for (int i:temp) {
            if (i == 6) {
                System.out.println("一维数组 i ="+i);
            }
        }

        int [][] tempTwo = {{1,2,3},{4,5,6},{7,8,9}};
        for (int i[]:tempTwo) {
            for( int j:i){
                System.out.println("二维数组j ="+j);
            }
        }
    }
}

输出:


一维数组 i =6


二维数组j =1


二维数组j =2


二维数组j =3


二维数组j =4


二维数组j =5


二维数组j =6


二维数组j =7


二维数组j =8


二维数组j =9



Process finished with exit code 0


2. 原理:

    待补充.

3. 优点:
(1) 代码非常简洁,特别是在遍历map的时候.


(2) 不用关

注容器下标的问题,减小了出错的概率,不用担心

越界的问题了.


  


4. 缺点:


(1) foreach 不能获得数据的

index.


(2) 遍历的时候不能

修改或者

删除容器中的数据.