循环结构-for,while,do-while
for,while,do-while >完整的循环应该包含以下四个部分: 初始化语句:初始化工作,在循环体开始之前执行 条件表达式:一个boolean表达式,决定是否执行循环体 循环体:反复执行的部分 循环变量控制语句(迭代语句):在循环体执行完之后执行,然后再去判断循环条件,一般用来控制循环条件中的变量,使循环在合适的时候结束 ###for循环
>格式 for(初始化表达式;条件表达式;循环变量控制语句){
循环体语句;
} 特殊格式 for(;;){ }
>for运行的顺序: 1.执行初始化表达式,只执行一次,通常是定义循环变量语句
2.判断循环条件:为真就往下执行;为假就结束循环
3.执行循环体语句
4.执行循环变量控制语句,一般是循环变量的自增或自减
5.回到第2步,重复这个过程,直到为假时结束
>for循环注意事项: 1.循环变量通常定义为int型,因为最常用的就是int型
2.循环条件判断的结果是boolean类型值
3.小括号中的分号不能写成中文的分号
4.如果循环体只有一条语句的话,可以省略大括号,但建议写全
5.循环变量控制语句不必每次改变1,根据情况,可以是任意值 ###While循环
>格式 [初始化语句]
while(条件表达式){
循环体语句;
[循环变量控制语句]
} 特殊格式 while(true){
if(...){//退出循环;break}
}
>执行流程: 1.执行初始化语句(如果有的话)
2.判断条件表达式真假:如果真,往下执行;如果假,结束循环
3.执行循环体语句
4.执行循环变量控制语句(如果有的话)
5.返回第2步,重复执行,直到条件为假,结束循环 >循环变量的使用问题 for循环的循环变量,一般情况下在循环外是不能访问到的,
因为它的作用域是在for循环的{}之内,
但是可以通过把循环变量定义在外边来实现这个功能;
或者定义计数器
for(int i = 0;i<10;i++){
...
}
System.out.println(i);//NG报错 /*正确模式
int i = 0;
for(;i<10;i++){
...
}
System.out.println(i);//OK
*/
# while循环本身就把循环变量定义在循环之外,所以没有这个问题
int i = 0;
while(i<10){
...
i++;
}
System.out.println(i); >for 和 while的应用场景 for循环和while循环一般情况下是可以互换的.
1.当明确知道循环的范围的时候,通常使用for
2.当不明确循环次数的时候,for和while都可以,通常使用while ###do-While循环 [初始化语句]
do {
循环体语句;//至少被执行一次
[循环变量控制语句]
}while(条件表达式);
>eg1: //在控制台上依次打印1-10
public class PrintDemo{
public static void main(String[] args){
for(int i = 1;i<=10;i++){
System.out.println(i);
}
}
} >eg2: //求1-10的和
public class SumDemo{
public static void main(String[] args){
int sum=0;
for(int i = 1;i<=10;i++){
sum+=i;
}
System.out.println(sum);
} } >eg3: //求水仙花数:位数,各个位上数字的立方和等于这个数本身,例:153 public class FlowerDemo{
public static void main(String[] args){
int sum=0;
for(int i = 100;i<=999;i++){
int bai = i / 100;
int shi = i /10 %10;
int ge = i %100 %10;
if(bai*bai*bai+shi*shi*shi+ge*ge*ge==i){
System.out.println(i);
}
}
}
}
>eg4: //统计1000以内,同时是3,5,7的倍数的数有多少个?
/*
在1-100之间,若是3的倍数,则在它之后输出中文“三”,
若是5的倍数,则在它之后输出中文“五”,
若是7的倍数,则在它之后输出中文“七”
*/ public class Multiple_3_5_7{
public static void main(String[] args){
for(int i= 1;i<=100;i++ ){
System.out.print(i);
if (i % 3 == 0){
System.out.print(" 三 ");
} if(i % 5 == 0){
System.out.print("五");
}
if(i % 7 == 0){
System.out.print("七");
}System.out.println("");
}
}
}
循环结构-for,while,do-while的更多相关文章
- Python学习--04条件控制与循环结构
Python学习--04条件控制与循环结构 条件控制 在Python程序中,用if语句实现条件控制. 语法格式: if <条件判断1>: <执行1> elif <条件判断 ...
- Swift -运算符和循环结构
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px Menlo; color: #4dbf56 } p.p2 { margin: 0.0px 0. ...
- 浅析PHP中for与foreach两个循环结构遍历数组的区别
遍历一个数组是编程中最常见不过的了,这里跟大家讨论下for和foreach两种方法.用这两种方法执行遍历的场景太多太多了,这里我们只针对以下两个数组作为例子来讨论.所谓管中窥豹,多少能理清一点两者的区 ...
- PHP流程控制之循环结构
计算机程序最擅长的功能之一就是按规定的条件,重复执行某些操作.循环结构可以减少源程序重复书写的工作量,即在给定条件成立时,反复执行某程序段,直到条件不成立为止.给定的条件称为循环条件,反复执行的程序段 ...
- python基础之循环结构以及列表
python基础之编译器选择,循环结构,列表 本节内容 python IDE的选择 字符串的格式化输出 数据类型 循环结构 列表 简单购物车的编写 1.python IDE的选择 IDE的全称叫做集成 ...
- C语言-循环结构及break、continue
循环结构 --1-- 结构循环 1.1 while循环 1.2 do…while循环 1.3 for循环 --2-- break和continue 2.1 break关键字 2.2 continue关 ...
- 黑马程序员——C语言基础 流程控制 选择结构和循环结构
---恢复内容开始--- Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)流程控制 1> 顺序结构:默认的流程 ...
- Java 第8章 循环结构进阶
循环结构进阶 什么是二重循环? 二重循环的执行顺序是什么?
- luogg_java学习_03_流程控制及循环结构
本文为博主辛苦总结,希望自己以后返回来看的时候理解更深刻,也希望可以起到帮助初学者的作用. 转载请注明 出自 : luogg的博客园 谢谢配合! 程序流程控制 顺序结构 分支结构:if-else,sw ...
- C语言中的循环结构与选择结构
1. 为什么使用循环? 重复执行某段代码 2. while(条件){ 循环体: } 当条件成立的时候就执行循环体,条件不成立,就退出循环,继续执行while后面的语句 3. for ( 初始表达式 : ...
随机推荐
- 版本控制(svn、Git)环境创建
1.SVN 2.Git last 版本控制工具应该具备的功能: 协同修改: 数据备份: 版本管理: 权限控制: 历史记录:查看修改人.修改时间.修改内容…… 分支管理:开发团队在工作过程中多条产品线同 ...
- 最强Hibernate搭建文章(转)
Hibernate优势: 1.Hibernate对JDBC访问数据库的代码做了轻量级的封装,大大简化了数据访问的层的重复性代码,并却减少了内存消耗,加快了运行效率. 2.Hibernate是一个基于J ...
- Spring4新特性
参考 : https://jinnianshilongnian.iteye.com/blog/1990081
- SQLite在Android程序中的使用方法,SQLite的增删查改方法
Sqlite: 1.一款用来实现本地数据存储的轻量级数据管理工具,是众多用来实现数据库管理的工具之一. 2.Android已经将SQLite的代码功能吸收在它的系统中,我们可以直接在Android程序 ...
- 数据库设计,表与表的关系,多对多。Many-To-Many(3)
多对多:两个数据表里的每条记录都可以和另一个表里的任意数量的记录(或者没记录)相关. 多对多关系是关系数据库中两个表之间的一种关系, 该关系中第一个表中的一个行可以与第二个表中的一个或多个行相关.第二 ...
- week07 13.3 NewsPipeline之 三News Deduper之 tf_idf 查重
我们运行看结果 安装包sklearn 安装numpy 安装scipy 终于可以啦 我们把安装的包都写在文件里面吧 4行4列 轴对称 只需要看一半就可以 横着看 竖着看都行 数值越接近1 表示越相似 我 ...
- javascript中正则表达式中的 match,exec,test,replace 之我理解
这个正则 ($&) 的语法: https://msdn.microsoft.com/library/3k9c4a32(v=vs.94).aspx 在ECMAScript中对这几个的说明: ma ...
- aio,nio ,io 心得
1.nio 流的过程有几个,连接,可读,读 ,返回 :连接了不一定可读,等待浪费时间,这些时间可以去读其他的连接,selector是管理,管理全部测一下可不可读,只对可读的连接进行读取.同时,nio有 ...
- 用js控制 给一个input赋值之后,change事件不能捕获到,解决办法
你用js给input赋值后要调用change方法 下面是jquery的写法 $('input#3').val("50"); $('input#3').change(); 自己试试吧
- CDH Spark-shell启动报错
Spark-shell启动报错 具体报错如下: 在CDH YARN 中修改以下两个配置: yarn.scheduler.maximum-allocation-mb 2048 yarn.no ...