Java基础知识(七)流程控制语句之死循环、跳转语句和嵌套循环

1、死循环

概述:

适用所有的循环语句,循环语句的循环条件恒成立,循环语句停止不下来的语句,就是死循环。
好处: 解决一些特殊的场景应用,比如:无限登录服务器的运行;
弊端: 对硬件要求较高,最终肯定会宕机 。

for循环的死循环:
for(int a = 0;a++; a < 0){
循环体;
}

while循环的死循环
while(true){
循环体;
}

2、跳转语句

概述:

人为的对循环执行进行控制时使用的语句。

分类:

  • break:打断 在选择语句中结束整个选择语句的 在循环语句中结束整个循环,后续循环不执行。
  • continue: 在循环语句中结束当前循环次数的执行,继续执行后续循环

代码示例:

public class JumpLoopDemo {
	 public static void main(String[] args) {
		 for (int i = 1; i < 6; i++) {
		 if (i == 3) {
			 break;// 结束整个循环,1、2后不执行 
			 continue; // 结束当前次数的循环,执行 1 2 4 5
		 }
		 System.out.println(i);
		 
		 }
	 } 
 }

3、嵌套循环

概述:

一个循环内的循环体是另一个循环体的循环语句就是嵌套循环。所以在学习和使用嵌套循环的时候,就使用单个循环语句的知识点去使用它。
比如:
for(初始化语句外;循环条件外;初始化变量改变外){
// 外循环体
for(初始化语句内;循环条件内;初始化变量改变内){
循环体内
}
}

执行流程:

1、执行初始化语句外 。

2、执行循环条件外 。
不成立:结束外循环【注意:内循环根本没有权利执行】 ;

成立:
3、执行内循环【外循环的循环体】
3.1、执行初始化语句内
3.2、执循环条件内 不成立:结束内循环执行第4步 。
成立:
3.3、执行循环体内。
3.4、执行初始化变量改变内。
3.5、回到3.2 形成 3.2 3.3 3.4 3.5 闭环操作一直到循环条件内不成立,结束内循环,去执行步骤4 。

4、执行初始化变量改变外 。

5、回归第2步 形成 2345闭环操作 一直到循环条件外不成立结束外循环 。

代码示例:

public class LoopAndLoopDemo {
 
	 public static void main(String[] args) {
		 for (int i = 1; i <= 5; i++) {
			 for (int j = 1; j <= 4; j++) {
			 	System.out.println("外循环" + i + "内循环" + j);
			 }
		 }
	 }
	 // 外循环执行一次 内循环执行全部
 }

案例示例1:

使用嵌套循环,打印四行五列星星矩形【每次只能打印一个*】
*****
*****
*****
*****
提示:打印不换行,使用 print 方法,不要加 ln。
分析:
*****看成一个整体 字符’a’
重复的打印4次’a’【4行a】
真正要打印的每行的内容是***** 不是a
因为:
a的真正的内容是5个* 需要打印5次*【重复的打印】 每行打印完需 要换行
所以:
使用循环打印5个* 然后换行 替换内容a

public class LoopAndLoopText01 {
	 public static void main(String[] args) {
		 // 先要打印4行字符a
			 for (int i = 1; i <= 4; i++) {
				 // System.out.println('a');
				 // 使用循环打印5个* 然后换行 替换内容a
				 for (int j = 1; j <= 5; j++) {
					 // 打印同一行的*
					 System.out.print("*");// 打印完内容不换行
			 }
			 // 内循环完毕同一行的5*打印完毕需要换行
		 System.out.println();
		 }
	 } 
}

案例示例2:

打印 99 乘法表
11=1
1
2=2 22= 4
1
3=3 23=6 33=9

19=9 29=18 39=27 … 89=72 9*9=81

分析: 把 1*1=1 式子 看成是一个 * 整体结构就变得和练习2的结构一样 使用练习2的 思路完成结 构的打印。9行9列的打印。
式子内容: 每行内容的个数 * 每行行数 = 每行内容的个数 * 每行行数成绩的值 字符串 内循环的初始化变量 + * + 外循环的初始化变量 + = + 内循环的初始化变量 * 外循环的初始化变量 。

public class LoopAndLoopText03 {
	 public static void main(String[] args) {
		 // 先要打印9行字符a
		 for (int i = 1; i <= 9; i++) {
			 // 打印行的内容
			 // System.out.println("a");
			 for (int j = 1; j <= i; j++) {
				 // * 的内容是 1*1= 1 1*2 = 2 j + "*" + i + "=" +j*i
				 System.out.print(j + "*" + i + "=" + j*i + "\t");
				 //不换行打印 * 完成每行内容的打印
			 }
		 // 循环完事 一行内容打印完毕 需要换行
		 System.out.println();
		 }
	 
	 } 
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值