前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >从0学Java(五)do-while循环

从0学Java(五)do-while循环

作者头像
Java极客技术
发布2022-12-04 13:49:01
8680
发布2022-12-04 13:49:01
举报
文章被收录于专栏:Java极客技术

上篇我们讲了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循环,两个流程图让他们更加明朗一点

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-10-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Java极客技术 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档