学习目标:
熟练使用for循环结构
熟练使用break和continue
学习内容:
一.for循环的语法和执行顺序
练习1——计算100以内的奇数之和
需求说明 计算100以内的奇数之和,并设置断点调试程序,追踪3个表达式的执行顺序及循环变量的变化
public static void main(String[] args) {
int sum = 0;
/*int i = 1;
while (i <= 100){
//sum = sum + i;
sum += i;
i++;
}*/
for(int i = 1;i <= 100; i++){
if(i % 2 == 1){
sum += i;
}
}
System.out.println("1-100的数字之和是:" + sum);
}
for循环常见问题
1.编译错误: 变量 i 没有初始化
//错误代码
for(;i<10;i++){
System.out.println("这是 "+i);
}
2.编译正确,但是缺少 循环条件,造成死循环
//错误代码
for(int i=0;;i++){
System.out.println("这是 "+i);
}
3.编译通过,但是循环变量的值无变化, 造成死循环
//错误代码
for(int i=0;i<10;){
System.out.println("这是 "+i);
}
4.表达式全省略,无条件判断,循环变量无改变, 应在循环体内设法结束循环;否则会造成死循环
//错误代码
for(;;){
System.out.println("这是测试");
}
二.循环结构总结2-1
区别1:语法
while循环:
while(<条件>){
//循环体
do-while循环:
do{
//循环体
for循环:
for(初始化;条件;迭代){
//循环体
区别2:
执行顺序 while 循环:先判断,再执行
do-while循环:先执行,再判断 for循环:先判断,再执行
区别3:适用情况
循环次数确定的情况,通常选用for循环
循环次数不确定的情况,通常选用while或do-while循环
三.跳转语句
1.跳转语句break
使用场景1:在switch选择结构中,break语句用于终止switch语句中的某个分支,使程序跳到switch选择结构的下一条语句。
int i = 2;
switch(i){
case 1:
System.out.println("星期一");
break;
case 2:
System.out.println("星期二");
break;
}
//其他语句
遇到break,立即跳出switch语句
使用场景2:用于do-while、while、for循环结构中时,break语句可终止循环,使程序跳转到循环体外的下一条语句
while(…) {
……
……
……
break;
……
……
……
}
2.跳转语句continue
使用场景:在某次循环中,跳过循环体中剩余的语句而执行下一次循环。只能用在循环结构中。
while(…) {
……
……
……
continue;
……
……
}
通常与条件语句一起使用, 加速循环
3.对比break和continue
使用场合
break常用于switch结构和循环结构中
continue一般用于循环结构中
作用(循环结构中)
break语句终止某个循环,程序跳转到循环块外的下一条语句
continue跳出本次循环,进入下一次循环
return:结束当前方法的执行并退出,返回到调用该方法的语句处