07-java基础语法(while-dowhile-强化练习

while,dowhile
1.while与do-while循环
与for循环并列,java还提供了两种不同的循环格式,分别为while循环与do-while循环。
1.1while循环
格式
基本格式
while(布尔表达式) {
循环体语句;
}
扩展格式
初始化表达式①
while(布尔表达式②){
循环体③
步进表达式④
}
执行流程
执行顺序: ①②③④>②③④>②③④… ②不满足为止。
①负责完成循环变量初始化。
②负责判断是否满足循环条件,不满足则跳出循环。
③具体执行的语句。
④循环后,循环变量的变化情况。
流程图
在这里插入图片描述
输出10次HelloWorld

public class Demo01While {
	public static void main(String[] args) {
		//使用for循环打印10次HelloWorld
		for (int i = 1; i <=10; i++) {
			System.out.println("HelloWorld");
		}
		System.out.println("--------------------");
		//while循环实现打印10次HelloWorld
		int i = 1;
		while(i<=10){
			System.out.println("HelloWorld");
			i++;
		}
	}
}

1.2do while循环
格式
基本格式
do {
循环体语句;
}while(布尔表达式);
扩展格式
初始化表达式①
do{
循环体③
步进表达式④
}while(布尔表达式②);
执行流程
执行顺序: ①③④>②③④>②③④… ②不满足为止。
①负责完成循环变量初始化。
②负责判断是否满足循环条件,不满足则跳出循环。
③具体执行的语句
④循环后,循环变量的变化情况
流程图
在这里插入图片描述
输出10次HelloWorld

public class Demo01DoWhile {
	public static void main(String[] args) {
		//输出10次 HelloWorld
		/*
		for(int x=1; x<=10; x++) {
			System.out.println("HelloWorld");
		}
		*/
		
		//do...while改写
		int x=1;
		do {
			System.out.println("HelloWorld");
			x++;
		}while(x<=10);
	}
}

1.3三种循环的比较
虽然可以完成同样的功能,但是还是有小区别:
do…while循环至少会执行一次循环体。
for循环和while循环只有在条件成立的时候才会去执行循环体
for循环语句和while循环语句的小区别:
使用区别:控制条件语句所控制的那个变量,在for循环结束后,就不能再被访问到了,而while循环结束还可以继续使用,如果你想继续使用,就用while,否则推荐使用for。原因是for循环结束,该变量就从内存中消失,能够 提高内存的使用效率。
循环使用推荐for – while – do…while
死循环的介绍 while(true) for(;😉
1.4循环嵌套
循环嵌套并不是一个新的知识点。只是在循环格式中嵌套使用了循环。如:请打印3行5列的矩形(使用来完成)
如for循环可以嵌套for循环:
for(初始化表达式; 循环条件; 操作表达式) { ……… for(初始化表达式; 循环条件; 操作表达式) { 执行语句 ……… } ……… }
测试代码:
打印3行4列的矩形

for (int i = 1; i <= 3; i++) {
			for (int j = 1; j <= 4; j++) {
				System.out.print("* ");
			}
			System.out.println();
		}

运行结果
在这里插入图片描述
1.5无条件分支跳转
break和continue 这两个关键字就属于这种无条件分支跳转的关键字,有的人也称呼这两个关键字叫跳转语句或者跳转控制语句. 其中break可以理解为中断,continue可以理解为停止这次而进行下一次
在这里插入图片描述
break
break的使用场景:
在选择结构switch语句中
在循环语句中
离开使用场景的存在是没有意义的
break的作用:
跳出单层循环
测试代码:

public class Demo01Break {
	public static void main(String[] args) {
		//离开使用场景没有意义
		//break;//break cannot be used outside of a loop or a switch
		
		for (int i = 1; i <=10; i++) {
			//需求:打印完两次HelloWorld之后结束循环
			if(i == 3){
				break;
			}
			System.out.println("HelloWorld"+i);
		}
	}
}

Continue
continue的使用场景:
在循环语句中
离开使用场景的存在是没有意义的
continue的作用:
单层循环对比break,然后总结两个的区别
break 结束当前循环
continue 结束本次循环,继续下一次循环
测试代码:

public class Demo02Continue {
	public static void main(String[] args) {
		//离开使用场景没有意义
		//continue;//离开使用场景没有意义
		
		for (int i = 1; i <=10; i++) {
			//需求:不打印第三次HelloWorld
			if(i == 3){
				continue;
			}
			System.out.println("HelloWorld"+i);
		}
	}
}

2、Debug观察循环变量变化
2.1IDEA-Debug
IDEA为我们提供了debug功能查看程序执行流程和调试程序。
我们可以根据自己的要求,在希望程序停下的哪行暂停,进行变量值变化的观察。
这里观察以下两个案例:
1、两个数求和,观察变量变化
2、while打印1-10,观察变量变化
断点:你所希望暂停的地方,叫做断点(breakpoint)。需要预先标记好,在需要的代码行号位置双击鼠标左键即可。
示例:
如下一段代码 ,想查看程序执行到 int c = a+b; 时 变量a,b的值分别是多少,然后再想看看程序一行一行往下执行的流程,就可以使用debug模式进行查看了
在这里插入图片描述
步骤有三个:
打断点,Debug运行,一步一步执行
先说打断点
希望程序执行时 停在 int c = a+b;这一行,就可以在这一行前面打断点了
在这里插入图片描述
Debug模式运行
有两种方式,一种是直接类似run的样子 选择debug模式运行,另一种是点击工具条的小虫子
第一种方式如图:
在这里插入图片描述
第二种方式如图:
在这里插入图片描述
一步一步执行
上面两种方式都可以进入debug模式
我们会看到下图:
在这里插入图片描述
此时的程序卡在了断点的这一行也就是第11行,如果希望看到11行执行完毕的结果,我们可以点击下面的按钮让程序执行一行代码
在这里插入图片描述
执行效果
在这里插入图片描述
如果还想继续查看下一行代码的执行效果,就可以再次点击下一步(step Over)按钮
在这里插入图片描述
控制台执行结果。
在这里插入图片描述
以此类推继续一步一步执行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值