流程控制的简单概念

流程控制:指通过关键字控制代码的执行流程;

一、顺序结构:执行顺序从左到右从上到下;

顺序结构无关键字,一般而言大多数代码都是顺序结构;

二、选择结构:根据条件判断是否执行

选择结构的关键字:if、else、switch;

/**
选择结构的简单格式
**/
// 单分支结构
if(){ } // 双分支结构
if(){ }else{ } // 多分支结构
if(){ }else if(){ }else if(){ }… switch(){
case 1:
...
...
} /**
选择结构详解
**/
if(条件表达式1){
条件表达式1成立时执行的代码块;
条件表达式1成立时,将不会继续执行其后的所有条件判断直接跳出分支结构;
}else if(条件表达式2){
条件表达式2成立时执行的代码块;
}else{
以上所有条件表达式都不成立时要执行的代码块;
}//else可根据实际情况选择是否添加 switch(表达式){
case值1:
表达式的值为值1时要执行的代码块;
break;//如无break,会继续执行其后的case子句,直至碰到break或者switch语句整体执行完毕
case值n:
表达式的值为值n时要执行的代码块;
break;
default:
表达式值不为以上所有值时要执行的代码块;
break;
}

关于switch的几点注意事项:

1、switch只适用于穷举法(需列举出所有可能的情况)

2、switch表达式的值的类型仅限于:int、String、Enum

3、只有当所有的case都不等于switch表达式的值时才执行default;default的执行顺序与其位置无关(default即使在case前,也不会最先执行它)

4、break作用是结束switch结构

5、case不能重复

三、循环结构:当条件成立时执行循坏体内语句,一直重复,直至条件不成立

​ 循环结构的关键字:while、for

// 1、while循环;
// while循环的格式:
while(条件表达式){
条件表达式成立时执行的代码块;(循环体)
迭代语句;(按指定的算符重复的更改某个变量的值)
}//格式与if极为相似,甚至可以说是完全相同;
/**
while的执行过程:
1、判断条件表达式是是否成立,不成立结束while;
2、条件表达式成立,执行代码块一次;
3、重复1、2直到条件表达式不成立;
**/ //2、do-while;
//do-while循环的格式
do{
循环体(循环执行的代码块)
迭代语句;
}while(条件表达式);
/**
while与do-while的区别:
do-while是先执行,后判断;至少执行一次;
while先判断后执行;可能一次也不执行;
**/ //3、for;
//格式如下
for(初始化语句;条件表达式;迭代语句){
循环体(条件表达式成立时执行的代码块)
}//初始化语句:用于定义变量、给变量赋初始值的语句
//for特殊情况:初始化语句、条件表达式、迭代语句、都可以省略;构成死循环
//当条件表达式省略后:条件表达式的取值默认为true 初始化语句;
while(条件表达式){
循环体(条件表达式成立时执行的代码块)
迭代语句
}//根据以上两段代码格式,我们可以看出for和while完全等价,只是格式不同 //for循环中相关变量的作用域
int a=1;//变量a:在main方法的大括号内定义的作用域为整个main方法
for(int b=1;b<5;){
//变量b:在for循环的初始化语句中定义的作用域为整个for循环
int c=1;
//变量c:在for循环的循环体中定义的,作用域为本次for循环
}//一个变量的作用域取决于定义此变量的括号

四、跳转:

跳转语句共两个,分别为:break与continue;

break:

使用场景1:用在switch中,作用:结束switch结构;

使用场景2:用在循环中,作用:结束本层循环;

continue:

使用场景:用在循环中,结束此次循环,继续下一次循环;

五、JavaSE语言基础之流程控制的更多相关文章

  1. Go语言基础之流程控制

    Go语言基础之流程控制 流程控制是每种编程语言控制逻辑走向和执行次序的重要部分,流程控制可以说是一门语言的“经脉”. Go语言中最常用额流程控制有if和for,而switch和goto主要是为了简化代 ...

  2. GO语言学习——Go语言基础之流程控制一

    Go语言基础之流程控制 if else(分支结构) package main import "fmt" // if条件判断 func main(){ // age := 19 // ...

  3. 1.4 Go语言基础之流程控制

    流程控制是每种编程语言控制逻辑走向和执行次序的重要部分,流程控制可以说是一门语言的"经脉". Go语言中最常用的流程控制有if和for,而switch和goto主要是为了简化代码. ...

  4. GO学习-(7) Go语言基础之流程控制

    流程控制是每种编程语言控制逻辑走向和执行次序的重要部分,流程控制可以说是一门语言的"经脉". Go语言中最常用的流程控制有if和for,而switch和goto主要是为了简化代码. ...

  5. go语言基础之流程控制 if语句

    Go语言支持最基本的三种程序运行结构:顺序结构.选择结构.循环结构. 顺序结构:程序按顺序执行,不发生跳转. 选择结构:依据是否满足条件,有选择的执行相应功能. 循环结构:依据条件是否满足,循环多次执 ...

  6. Java基础-程序流程控制第二弹(循环结构)

    Java基础-程序流程控制第二弹(循环结构) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 流程控制有三种基本结构:顺序结构,选择结构和循环结构.一个脚本就是顺序结构执行的,选择结 ...

  7. Go语言 数据类型,流程控制

    Go语言 数据类型,流程控制 人生苦短,Let's Go ! package main // 必须要有一个main包 import "fmt" func main() { fmt. ...

  8. Java基础-程序流程控制第一弹(分支结构/选择结构)

    Java基础-程序流程控制第一弹(分支结构/选择结构) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.if语句 1>.if语句的第一种格式 if(条件表达式){ 语句体: ...

  9. JAVA入门基础及流程控制

    JAVA入门基础及流程控制 数据类型 位 存储单位 eg:0001 0011 八位 字节 byte 处理数据单位 一字节等于八位 eg:1b=0011 0001 类变量: static int num ...

随机推荐

  1. Python批量图片去水印,提高工作效率

    ​平常工作中,有时为了采用网络的一些素材,但这些素材往往被打了水印,如果我们不懂PS就无法去掉水印,或者无法批量去掉水印.这些就很影响我们的工作效率. 今天我们就一起来,用Python + OpenC ...

  2. 设置vue全局配置

    全局配置 创建全局配置文件 vue.config.js 添加配置项

  3. [刷题] 455 Assign Cookies

    要求 贪心算法的关键:判断问题是否可以用贪心算法解决 给小朋友们分饼干,每个小朋友"贪心指数"为g(i),饼干大小值s(i) g(i):小朋友需要的饼干大小的最小值 若s(j)&g ...

  4. 强哥HTML学习笔记

    html 浏览器的选择:1.火狐2.ie3.chrome4.mac5.opera 安装两款插件:1.firebug2.web develope html页面元素:1.doctype2.htmlhead ...

  5. python-cmdb资产管理项目4-资产入库处理以及资产变更记录处理

    一 资产入库处理 1.1 连接数据库 在192.168.100.101安装数据库,并给总控机授权可以操作,并创建一个autoserver的数据库,密码123456 settiing.py 配置数据库连 ...

  6. MyBatis 高级查询环境准备(八)

    MyBatis 高级查询 之前在学习 Mapper XML 映射文件时,说到 resultMap 标记是 MyBatis 中最重要最强大也是最复杂的标记,而且还提到后面会详细介绍它的高级用法. 听到高 ...

  7. 第七章 DevOps工具链

    DevOps工具生态圈 协同开发工具 敏捷开发 可视化 加强团队沟通协作 数据分析 协同开发 持续集成工具 Jenkins 自动化编译 自动化测试 自动化部署 丰富的插件库 版本管理工具 Git 简介 ...

  8. [ Java面试题 ]Java 开发岗面试知识点解析

    如背景中介绍,作者在一年之内参加过多场面试,应聘岗位均为 Java 开发方向. 在不断的面试中,分类总结了 Java 开发岗位面试中的一些知识点. 主要包括以下几个部分: Java 基础知识点 Jav ...

  9. CAS(Compare and Swap)无锁算法-学习笔记

    非阻塞同步算法与CAS(Compare and Swap)无锁算法 这篇问题对java的CAS讲的非常透彻! 锁的代价 1. 内核态的锁的时候需要操作系统进行一次上下文切换,加锁.释放锁会导致比较多的 ...

  10. 原子层沉积(ALD)和化学气相沉积(CVD)微电子制造铜金属化的研究进展

    原子层沉积(ALD)和化学气相沉积(CVD)微电子制造铜金属化的研究进展 Atomic Layer Deposition (ALD) and Chemical Vapor Deposition (CV ...