第六 Java循环结构之 do while 与for循环


一、do while循环

while:先判断条件,只有条件满足才执行循环体。      

do while: 先执行循环体,再判断条件,条件满足,再继续执行循环体。

简单一句话:dowhile:无论条件是否满足,循环体至少执行一次。

注意一个细节do  while 后面的分号; 


do while语句格式:

do

{

    执行语句;

}while(条件表达式);

do while特点是条件无论是否满足,

循环体至少被执行一次。


public static void main(String[] args) {
		int x = 0, y = 0;
		do {
			System.out.println(x);
			x++;
		} while (x < 0);
		// do while do会先执行一次,不管是否满足循环条件。
		while (y < 0) {
			System.out.println(y);
			y++;
		}
	}

改写猜数字游戏

public static void main(String[] args) {
		// 记录用户输入的数字
		int guess = -1;
		// 记录用户输入次数
		int count = 0;
		// 生成1-100之间随机数
		int num = (int) (int)(Math.random()*100)+1;
Scanner sc = new Scanner(System.in);

		// 循环猜数字
		do {
			System.out.println("请输入1-100之间的数字");
			guess = sc.nextInt();
			if (guess > num) {

				System.out.println("哥们,太大了");
			} else if (guess < num) {

				System.out.println("哥们,太小了");
			} else {

				System.out.println("恭喜,流弊中啦");
			}
			count++;

		} while (num != guess);
		System.out.println("你猜测的数字是:" + num + "猜测了" + count + "次");
	}




二、for 循环

1.格式:for(初始化表达式;循环条件表达式;循环后的操作表达式)

{

       执行语句;

}


2.定义需求: 想要打印5次helloworld

public static void main(String[] args) {
		for (int x = 0; x < 5; x++) {
			System.out.println("hello java");
		}
	}

3.for的执行流程

for知道要进行循环,读到x=0的时候,在内存中开辟了空间,定义变量x 赋值为0。接着进行条件判断x<5,为真,这个时候对满足条件后执行了循环体的内容System.out.println("hello java");当循环体执行完毕之后,执行x < 5;后的表达式即 x++ 。x自增后变为了1,再次进行判断x<5 (int x=0 只执行一次),如果为真就再次运行System.out.println("hello java");如果为假,for循环结束。




累加思想:通过变量记录住循环操作后的结果;通过循环的形式.进行累加的动作。

计数器思想:通过一个变量记录住数据的状态变化,也是通过循环完成。


循环常见错误:

多加分号:在for括号后和循环体之间加分号是常见错误。

错误:

程序编译运行都可以通过,只是不是我们想要的结果。

for(int i=0;i<100;i++);{

           System.out.println("hello ");

}

正确:

for(int i=0;i<100;i++){

           System.out.println("hello ");

}

 

错误;是一个死循环

int i=0;

while(i<100);{

    System.out.println("hello");

       i++;

}

正确:

int i=0;

while(i<100){

    System.out.println("hello");

       i++;

}





循环的高级使用:循环的嵌套

什么是嵌套形式,其实就是语句中还有语句。

需求:打印九九乘法表



代码实现如下:

public static void main(String[] args) {
		for (int x = 1; x <= 9; x++) {
			for (int y = 1; y <= x; y++) {
				System.out.print(y + "*" + x + "=" + x * y + '\t');
			}
			System.out.println(" ");
		}
}






break关键字:

break 语句用于终止最近的封闭循环或它所在的 switch 语句。控制传递给终止语句后面的语句(如果有的话)。

适用:for循环 、 switch两种循环语句。

break的用法:

1.   单独使用。

2.   与标签一起使用。(标签:即一个名字,满足标识符的条件即可)。

使用细节: 不要再break语句之后,编写其他语句,永远都执行不到,编译报错。




continue关键字

语句将控制权传递给它所在的封闭迭代语句的下一次迭代。(跳出本循环,执行下一次循环)

适用于:while 、 do while 、 for循环语句

使用细节:

     1. 如果continue出现在循环的末尾(最后一条语句),那么可以省略。

     2. 如果continue出现在循环的第一条语句,那么后面的语句都无法执行,所以编译报错。

     3. 可以结合标记使用。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值