增强型for循环:
语法:
for(Object obj : arraysName){};
第一个参数为第二个参数的数据类型,
第二个参数为用作循环赋值输出的变量名,
第三个参数为已定义且初始化的变量名。
举个栗子:
int[][] YangHuiTriangle = new int[][]{
{1},
{1,1},
{1,2,1},
{1,3,3,1},
{1,4,6,4,1},
}
for(int[] i : YangHuiTriangle ){
for(int j : i){
i[j]=1;
System.out.print(i[j]);
}
System.out.println();
}
//用增强for循环打印杨辉三角
解析:
首先int[ ]是数据类型 i是声明的一个int[ ]类型的变量 。YangHuiTriangle是从变量名为YangHuiTriangle的某种数据结构中找出所有int[ ]类型的数据并赋值给i。
优点:代码看着简洁,装B。
缺点:这个方法只可以访问已经定义好切初始化好的数据,不能变参数三的本身。
日记:今天刷杨辉三角的题,以前只用增强for循环做过访问一维数组的题,看了一下增强for循环的使用方法,发现第一个参数不一定是基本数据类型,就像想试试可否用增强型for循环来完成对集合本身进行增删等操作,但是发现很不好实现。因此这个方法仅适合用来访问某组数据结构。