Java 循环结构(while、do-while、for)

本文详细介绍了Java编程中的三种主要循环结构:while、do-while和for。通过实例解析了每种循环的语法、执行规律及注意事项,帮助初学者掌握循环控制,并列举了常见编程陷阱,强调了避免死循环的重要性。
摘要由CSDN通过智能技术生成

Java 循环结构(while、do-while、for)

一、while循环结构

1. 语法结构

初始值;
while(循环条件){
	//循环操作;
	//迭代部分
}

2. 执行规律

(1)执行1次初始值操作。

(2)判断循环条件,

​ 如果循环条件满足,执行循环操作代码,循环操作执行完,进行迭代,迭代后再次去判断循环条件是否满足;

​ 循环条件不满足,则结束整个循环结构的执行,继续执行循环结构之后的代码。

3. 注意事项

(1)初始值只执行1次。

(2)循环条件为布尔值,要么为true,要么为false。

(3)迭代部分的作用是改变循环条件的变量值,从而让其在某一时刻不满足循环条件,结束循环结构。如果没有迭代部分,容易出现死循环,要尽量避免使用死循环。

public static void main(String[] args) {
	//使用while循环结构输出100遍“好好学习,天天向上”
	//初始值
	int i =1;
	while(i<=100){//循环条件
		System.out.println("第"+i+"遍:好好学习,天天向上!");//循环操作
		i++;//迭代部分:改变i的值,让i在某一时刻不满足循环条件,结束循环结构
	}	
	System.out.println("程序执行完毕");
}

二、do-while循环结构

1. 语法结构

初始值;
do{
	循环操作代码
	迭代;
}while(循环条件);

2. 执行规律

(1)执行一次初始值代码。

(2)先执行一次循环操作和迭代,然后判断循环条件是否满足,

​ 如果循环条件满足,则继续执行循环操作和迭代;

​ 如果循环条件不满足,则结束整个do-while循环结构,执行do-while循环结构后面的代码。

3. 注意事项

(1)do-while循环结构,是先执行一次循环操作,再判断循环条件,也就是说do-while循环至少会执行一次循环操作。

(2)while循环结构,是先判断循环条件,再根据循环条件的结果决定是否执行循环操作,如果第一次循环条件就不能满足,循环操作就一次都不执行。

public static void main(String[] args) {
    /*
     * 经过几天的学习,老师给张浩一道测试题,
     * 让他先上机编写程序完成,然后老师检查是否合格。
     * 如果不合格,则继续编写…… 
     */
    Scanner input = new Scanner(System.in);
    String answer;// 初始值;
    do{
        System.out.println("上机编程......");// 循环操作代码
        System.out.println("测试是否合格?:");// 循环操作代码
        answer = input.next(); // 迭代;
    }while(!answer.equals("合格"));// 循环条件
    System.out.println("继续努力......");
}

三、for循环结构

1. 语法结构

语法结构:
	for(初始值;循环条件;迭代部分){
		//循环操作代码
	}

2. 执行规律

(1)先执行一次初始值代码。

(2)判断循环条件是否满足,

​ 如果循环条件为true,则执行循环操作代码,执行完循环操作,进行迭代,迭代完再次进行循环条件判断,根据循环条件判断结果决定是否继续执行循环操作;

​ 如果循环条件为false,则结束整个循环结构,继续往下执行循环结构后面的代码。

3. 注意事项

for循环也是先判断循环条件再决定是否执行循环操作。如果循环条件第一次就不满足,循环操作一次都不会执行。

public static void main(String[] args) {
    // 输出100次“好好学习!
    // 初始值;循环条件;迭代部分
    for(int k =0;k<100;k++){
	System.out.println("第"+(k+1)+"遍:好好学习,天天向上");
	}
}

4. 常见问题

(一)初始值一定要声明才能使用,可以在for循环之上声明,也可以在for循环()里声明。

int i =0;
for (; i < 10; i++) {
	System.out.println("这是 " + i);
}

(二)缺少循环条件,会进入死循环。

for(int i=0;;i++){
      System.out.println("这是 "+i);
}

(三)缺少迭代部分,如果循环条件满足,会进入死循环。

for(int i=0;i<10;){
    System.out.println("这是 "+i);
	i++;
}

(四)缺少初始值、循环条件、迭代部分,程序进入死循环。

for(;;){
     System.out.println("这是测试");
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Glensea

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值