从0学Java之Do-While循环

开发 前端
do-while循环和while循环很像,唯一的区别是我们在循环体执行结束的时候才来判断条件。也就是说,无论如何,循环都会执行至少一遍,然后再来判断条件。与while循环相同的是,条件满足时执行循环,条件不满足时结束循环。

我们讲了while循环,它会首先判断一个条件是否满足,如果条件满足,则执行后面紧跟着的语句或语句括号,然后再次判断条件是否满足,如果条件满足则再次执行,直到条件不满足为止。后面紧跟的语句或语句括号,就是循环体。

do-while循环和while循环很像,唯一的区别是我们在循环体执行结束的时候才来判断条件。也就是说,无论如何,循环都会执行至少一遍,然后再来判断条件。与while循环相同的是,条件满足时执行循环,条件不满足时结束循环。

①do-while循环

案例:数位数,如果给你一串数字,让你通过编程,让计算机判断出这一串数字是几位数,你打算怎么写?

  • 程序要读入一个正整数,然后输出这个整数的位数。如:
  • 输入:3452,输出:4

人看一眼就能看出来,这是4位数,但计算机是通过判断数的范围来决定它的位数,但如果是128475753943828482.....让人数怎么办,这时候就得依靠计算机,因为计算机最擅长的就是做算法,让这串数字每除以10就记一位,这样是不是就可以,让我们试一下。

//初始化
Scanner in = new Scanner(System.in);
int number = in.nextInt();
int count=0;
while(number >0)
{
number =number/10;
count = count +1;

}
System.out.println(count);
}

}

这么看好像完全没有问题,但往往没有问题的时候就会出现问题,如果是这一串数字是0呢,大家在这个代码上试一下。

代码运行起来会显示0,这显然是不对的,0的位数是1,那如果用do-while循环是不是就可以把问题解决掉,在进入循环体之前不做判断,而是在执行完一轮循环体的代码之后,再来检查循环的条件是否满足,如果满足则继续下一轮循环,不满足则结束循环。

//初始化
Scanner in = new Scanner(System.in);
int number = in.nextInt();
int count=0;
do
{
number =number/10;
count = count +1;

}
while(number >0);
System.out.println(count);
}

}

图片

ok,现在输入0显示的位数是1,说明是对的,那再测试一下其他数。

图片

我做了while循环和do-while循环,两个流程图让他们更加明朗一点。

图片

图片

责任编辑:武晓燕 来源: Java极客技术
相关推荐

2022-09-30 07:32:48

循环while循环体

2022-10-31 07:33:05

Javafor循环

2022-01-17 21:08:54

Python 循环结构

2022-10-30 10:14:43

Java循环语句

2024-02-26 12:13:32

C++开发编程

2022-11-26 00:34:57

数组Java程序

2020-07-23 08:18:27

C语言执行循环体条件

2022-09-16 07:32:15

编程计算机命令

2022-09-30 07:32:39

架构

2022-09-22 07:31:14

Java变量计算

2021-07-21 08:45:16

do{...} whi代码语言

2013-03-29 09:21:08

编程CSS

2022-01-27 09:35:45

whiledo-while循环Java基础

2020-11-13 07:22:46

Java基础While

2020-07-08 16:10:42

do{}while(0代码语言

2021-03-24 13:17:41

编程循环语句Java

2010-09-08 17:00:22

SQLWHILE循环

2021-08-13 15:09:47

JavaScriptWhile循环

2021-06-22 10:12:37

JavaScript 前端While 循环

2019-01-29 14:29:03

微服务路由
点赞
收藏

51CTO技术栈公众号