1.for循环
for循环是更加简洁的循环语句,大部分情况下,for循环可以代替while循环、do-while循环。
for循环的格式为:
for( 初始语句 ; 执行条件 ; 增量 )
{
循环体
}
执行顺序:1、初始语句 2、执行条件是否符合? 3、循环体 4、增加增量
初始化语句只在循环开始前执行一次,每次执行循环体时要先判断是否符合条件,如果循环条件还会true,则执行循环体,在执行迭代语句。
所以对于for循环,循环条件总比循环体多执行一次。
注意:for循环的循环体和迭代语句不在一起(while和do-while是在一起的)所以如果使用continue来结束本次循
环,迭代语句还有继续运行,而while和do-while的迭代部分是不运行的。
来个例子:输入一个数n(n>1),输出n!的值。n!(n的阶层)=1*2*3*……*n
1.增强for循环和iterator遍历的效果是一样的,也就说
增强for循环的内部也就是调用iteratoer实现的(可以查看编译后的文件),但是增强for循环 有些缺点,例如不能在增强循环里动态的删除集合内容。不能获取下标等。2.ArrayList由于使用数组实现,因此下标明确,最好使用普通循环。
3.而对于 LinkedList 由于获取一个元素,要从头开始向后找,因此建议使用 增强for循环,也就是iterator。
通过一个DEMO来理解:
2.break和continue的区别和作用
break和continue都是用来控制循环结构的,主要是停止循环。
1.break
有时候我们想在某种条件出现的时候终止循环而不是等到循环条件为false才终止。
这是我们可以使用break来完成。break用于完全结束一个循环,跳出循环体执行循环后面的语句。
2.continue
continue和break有点类似,区别在于continue只是终止本次循环,接着还执行后面的循环,break则完全终止循环。
可以理解为continue是跳过当次循环中剩下的语句,执行下一次循环。
例子:
这个的运行结果为: sum=1;
执行continue;
sum=6;
执行break 循环结束
运行结束。