for循环和while循环的区别
2019-08-16 09:55:59来源:博客园 阅读 ()
for循环和while循环的区别
for循环和while循环的区别
使用区别:如果你想在循环结束后,继续使用控制条件的那个变量,用while循环,
否则用for循环。不知道用for循环。
因为变量及早的从内存中消失,可以提高内存的使用效率。
其实还有一种场景的理解:
如果是一个范围的,用for循环非常明确。
如果是不明确要做多少次,用while循环较为合适。
举例:吃葡萄。
优先考虑for,其次考虑while,最后考虑do...while
class WhileVsForDemo { public static void main(String[] args) { //for循环实现 for(int x=0; x<10; x++) { System.out.println("我爱Java"); } //这里不能在继续访问了 //System.out.println(x); //while循环实现 int y = 0; while(y<10) { System.out.println("我爱Java"); y++; } //这里是可以继续访问的 System.out.println(y); } }
/* 循环语句的区别: do...while循环至少执行一次循环体。 而for,while循环必须先判断条件是否成立,然后决定是否执行循环体语句。 */ class DoWhileDemo { public static void main(String[] args) { int x = 3; while(x < 3) { System.out.println("我爱Java");//不会被执行 x++; } System.out.println("--------------"); int y = 3; do { System.out.println("我爱Java");//执行一次 y++; }while(y < 3); } }
WhileDemo:
需求:小芳的妈妈每天给她2.5元钱,她都会存起来,但是,
每当这一天是存钱的第5天或者5的倍数的话,她都会花去6元钱,
请问,经过多少天,小芳才可以存到100元钱。
分析:(分解问题,降低难度)
A:小芳的妈妈每天给她2.5元钱
double dayMoney = 2.5;
B:她都会存起来
double daySum = 0;
C:从第一天开始存储
int dayCount = 1;
D:经过多少天,小芳才可以存到100元钱。
double result = 100;
E:这一天是存钱的第5天或者5的倍数的话,她都会花去6元钱,
说明要判断dayCount的值,如果对5整除就减去6元钱。
daySum -= 6;
由此还隐含了一个问题,就是如果不是5的倍数天的话,钱要累加
daySum += dayMoney;
F:因为不知道是多少天,所以我用死循环while语句,
一旦超过100元我就退出循环。
class WhileDemo {
public static void main(String[] args) {
//每天要存储的钱是2.5元
double dayMoney = 2.5;
//存钱的初始化值是0
double daySum = 0;
//从第一天开始存储
int dayCount = 1;
//最终存储不小于100就不存储了
int result = 100;
//因为不知道是多少天,所以我用死循环,
while(true) {
//累加钱
daySum += dayMoney;
//一旦超过100元我就退出循环。
if(daySum >= result) {
System.out.println("共花了"+dayCount+"天存储了100元");
break;//满足条件即跳出死循环
}
if(dayCount%5 == 0) {
//花去6元钱
daySum -= 6;
System.out.println("第"+dayCount+"天花了6元钱");
}
//天数变化
dayCount++;
}
}
原文链接:https://www.cnblogs.com/frank-me/p/11148124.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- 你说研究过Spring里面的源码,循环依赖你会么? 2020-06-09
- Spire.Cloud.SDK for Java 合并、拆分Excel单元格 2020-06-09
- switch循环所支持的数据类型 2020-06-07
- 500 ZuulException: Forwarding error 2020-06-01
- 第六章第三十七题(格式化整数)(Format an integer) - 编程 2020-05-26
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash