一.循环的概念,组成,及类型

1.循环的概念: 程序通过某种条件,重复的执行一段逻辑代码

2.循环的组成:

i.初始部分:用以判断的变量

ii.循环条件:决定是否继续循环的依据,一般为布尔表达式

iii.循环操作:单次执行的逻辑代码或任务

iv.迭代部分:控制循环条件改变的数据变化

注意:被循环条件判断的变量才是循环的初始变量和迭代部分

3.循环的类型

i. do{}while();循环,一般用在不确定循环次数的场景下

ii.while(){}循环,一般用在循环次数明确的场景下

iii.for(;;;){}循环,一般用在循环次数明确的场景下

二.do{}while();循环

语法:

do{

//逻辑代码;

}while(布尔表达式);

该循环的特点是:先执行大括号里的逻辑代码再进行while语句里的判断,若while()里的布尔表达式为真则接着执行,否则不执行

因此该循环的循环次数为1-n次,也就是无论如何都会先执行一次do里的逻辑代码

三.while(){}循环

语法:

while(布尔表达式){

//逻辑代码;

}

该循环的特点是先判断布尔表达式的真假,若为真则执行逻辑代码,为假则结束循环

因此该循环的循环次数是0-n次

四.for(;;){}循环

语法:

for(初始条件;布尔表达式;迭代部分){

// 逻辑代码;

}

该循环特点为:可以一次性把循环的组成放入for语句中,for循环的执行过程为查看有无初始条件,然后进行布尔表达式的判断

若为假则结束循环,若为真则进行逻辑代码的执行,然后执行迭代部分,再接着一次循环

且若有需要可以把初始条件和迭代部分放在其他地方,但分号不可省略

此循环的循环次数为0-n次

注意:for循环可以用关键字break控制它,用法为:

先给for循环命名,命名语法是 命名:for(;;;){}

然后可以用 break 命名;

打断该循环,但好像代码界里对此方法颇有诟病

continue无此特殊用法

五.流程控制关键字

1.break

该关键字用于跳出循环结束该循环,特殊用法放在了for循环介绍里,执行流程为:

程序读到break关键字则会去寻找放入了该语句的循环体,根据就近原则跳出拥有该关键字的最近的循环

while(true){break;int a = 5;

}/*

*在该循环中,若无break则是一个死循环,但有了break之后

*程序判断入口表达式为真,进去执行代码时发现了break

*则接着直接跳出该循环,连对接下来循环内变量 a 的初始化赋值都不会进行*/

2.continue

该关键字用于跳出本次循环进行下一次循环,执行流程为:

程序读到continue 关键字则会跳出本次循环,然后根据就近原则进行下一次循环的判断执行

如:

while(i){ //假设已经给i赋值为true

i = falsecontinue;

i= true;

}//在该循环中,程序判断入口表达式为真,进入循环执行逻辑代码,给入口变量赋值为假,然后程序执行了continue//程序直接跳出该次循环,不执行后续语句,然后进行下一次的循环,但入口值已经改变,该循环结束,也不会读取i = true//与break的区别是,break直接结束,不会再进行下一次循环,更不会有下一次循环的入口判断,而continue则会

六.循环的嵌套

一般的,循环可以相互嵌套,用for举例 如:

for(int i = 0;i < 5;i++){for(int j = 0;j < 5;j++){//代码体;

}//代码体;

}/**在本循环中,执行程序为,第一个循环的初始值i 为0,显然满足入口条件,接着进入第一层循环体,然后进行第二个循环体的循环

*而第二层循环体的入口条件显然也满足,因此在该示例中第一层的第一次循环则要完成第二层的全部循环,也就是说外层循环一次

*内层要把所有的循环次数都循环完成,然后外层开始第二次循环判断,所以这一整个大的循环体循环进行次数为 若外层为 i 次

*内层为 j 次,则总循环次数为 i*j

*注意,在这种大的循环体中 break,continue关键字都是根据就近原则使用 (除了对某个循环赋值后 用break打断)*/

java三种循环结构_Java的三种结构(循环结构)相关推荐

  1. java双重for循环流程图_JAVA程序逻辑中的循环结构

    在上一篇文章中提到了程序逻辑通过顺序.分支.循环三种结构来实现的,并介绍了分支结构的执行语句,那么今天这篇文章介绍实现程序逻辑的另一种结构--循环结构. 什么是循环结构 循环结构是指在程序设计语言中按 ...

  2. java中的排序方法_Java中8种常见的排序方法

    本博主要介绍Java中几种常见的排序算法: /* 排序方法的演示 1)插入排序(直接插入排序.希尔排序) 2)交换排序(冒泡排序.快速排序) 3)选择排序(直接选择排序.堆排序) 4)归并排序 5)分 ...

  3. debug调到循环最后_Java入门(7)——循环和debug 调试

    循环: while 循环: 格式: int i = 0; ①    //初始化条件 while(i < 10) { ②  //判断条件 System.out.println(i); ④ //循环 ...

  4. java持久层用文件_JAVA中用三种方法将字符串持久化到文件中

    经常需要将数据进行持久化,而我们的文件系统是最古老也是最可靠的保存方式.这里就给出一个在JAVA中把字符串保存到文件中的例子.如下: package test.base; import java.io ...

  5. java取得输入的运算符_java第三天(运算符、键盘录入和控制语句)

    1:运算符(掌握) (1)算术运算符 A:+,-,*,/,%,++,-- B:+的用法 a:加法 b:正号 c:字符串连接符 1 classOperatorDemo {2 public static ...

  6. java ee框架学那个_Java EE三在主流框架是什么?_学小易找答案

    [简答题]Tomcat如何设置ip地址? [简答题]课本P67实训联系(1)(2)(3) (附件包含程序截图和运行结果截图) [单选题]谈判的实质就是辩论. [单选题]在PowerPoint中制作演示 ...

  7. java第三次实验代码_JAVA第三次实验

    3.1.实验目的 l 进一步掌握类的定义和对象的创建 l 掌握访问控制符的关系(public.priviate.protect) 3.2.实验准备 (1) JDK安装 (2) Eclipse的安装 ( ...

  8. java实现四次挥手_java中三次握手四次挥手是什么?图文详解

    关于java中的一些基础的知识,是非常的多的,而且涉及的方面也是非常的广阔的.相信大家在日常的学习中也会遇到很多这些令人疑惑的问题,今天就来为大家介绍一下,一起来看看吧. 首先说一下,java中三次握 ...

  9. java放3个按钮_java编写三个按钮

    展开全部 给你一段代码,应该能满足你的需求:public class LoginIFrame extends JFrame { public static void main(String[] arg ...

最新文章

  1. NVIDIA Nsight Systems CUDA 跟踪
  2. Maven之jar包和项目管理
  3. php无法将值传入数据库,PHP-无法将句子插入数据库
  4. 理解__repr__
  5. as_matrix、保存训练模型
  6. POJ-1195-Mobile phones
  7. 快切-开源中文css框架之纯css透明
  8. JS二维数组排序组合
  9. clearcase命令
  10. 一个游戏程序员的学习资料
  11. 系统自带测试软件,无需鲁大师检测!Windows自带工具检查系统健康度
  12. 07_游戏破解器与文件加解密
  13. poj3580:SuperMemo(块状链表/Splay)
  14. GCA matting(2020, trimap)
  15. lxr.linux.iso,linux c and asm 同时使用
  16. oracle查看当前的数据库实例名称,主机名称
  17. 懒得刷牙?微型机器人自动帮你搞定,还能牙刷牙线随时变换
  18. 社工攻击@斯拉夫字母
  19. 【HTML5 笔记】基础内容
  20. 买笔记本电脑如何避坑之接口篇

热门文章

  1. android执行命令行取得结果,Android调用shell脚本并取得输出
  2. android cydia使用教程,Android Hook工具Cydia Substrate使用
  3. vue动态发布到线上_Vue 2.6 发布了
  4. 更改yum源配置后执行报错[Errno 14] PYCURL ERROR 22 - “The requested URL returned error: 404 Not Found”
  5. 现代测试技术与软件关系大吗,现代测试技术及应用学习心得
  6. oracle unpivot 索引_Oracle 行转列pivot 、列转行unpivot 的Sql语句总结
  7. java主函数_《左手 Java 右手 Python 》之 Java 的安装与初识(1)
  8. Java里进制转换(二进制、八进制、十进制、十六进制)
  9. JSON.toJSONString 首字母不小写
  10. Android开发笔记(六十五)多样的菜单