当前位置: 首页 / 技术干货 / 正文
好程序员大数据培训分享大数据之流程控制

2020-03-10

大数据培训 好程序员 大数据教程

  好程序员大数据培训分享大数据之流程控制,程序在运行的时候, 对代码执行的先后顺序, 称作程序的执行结构. 在Java中, 程序的执行结构分为三种:

大数据1

- 顺序结构: 代码从上往下逐行执行, 是程序执行的基本结构
- 分支结构: 代码执行到某一个节点遇到多个分支, 选择其中的一个分支执行, 其他的分支都不执行
- 循环结构: 某一个代码段需要重复的执行

程序默认采用的是顺序结构, 我们也可以通过一些语句来修改程序的执行结构, 这样的语句叫做**流程控制语句**, 按照修改的执行结构不同, 可以分为 **分支流程控制** 和 **循环流程控制**

1.3.1 分支流程控制--if
基础语法
java
if (condition) {
// 代码段1
}
else {
// 代码段2
}

逻辑: condition是一个boolean类型的变量, 或者一个boolean结果的表达式. 如果condition的值为true, 则代码段1执行, 否则, 代码段2执行

进阶
java
if (condition1) {
// 代码段1
}
else if (condition2) {
// 代码段2
}
else {
// 代码段3
}

逻辑: 先判断condition1, 如果condition1成立, 执行代码段1; 如果condition1不成立, 再判断condition2, 如果condition2成立, 执行代码段2, 否则执行代码段3

特殊说明
在if-else语句中, 如果某一个代码段中只有一句语句, 则大括号可以省略; 但是从语法的规范来说, 一般情况下, 我们是不省略的

1.3.2 分支流程控制--switch
基础语法
java
switch (variable) {
case value1:
case value2:

default:
}

逻辑: variable是一个变量, switch语句捕获这个变量的值; 如果变量的值和某一个case后面的值相同了, 就会执行这个case后面的语句; 如果变量的值没有和任意的一个value相同, 则执行default后面的值

注意事项
在switch-case语句中有穿透性, 即: 如果variable的值和某一个value匹配了, 会执行从这个case开始, 一直到switch语句结束, 后面所有的代码, 且跳过后面的case匹配; 为了避免穿透, 可以使用关键字**break**来跳出switch语句

1.3.3 循环流程控制--while

基础语法

java
while (condition) {
// 循环体
}

逻辑: 每次循环线判断condition, 如果为true, 循环体执行, 然后再判断condition; 直到condition为false, 循环结束

do-while

java
do {
// 循环体
} while (condition);

逻辑: 先执行一次循环体, 然后再判断循环条件是否成立

关键字 break, continue 与 循环标签

break

用在循环中, 表示跳出循环; 如果用在多层循环中, 只会跳出当前的一层循环

continue

用在循环中, 表示继续循环, 从continue开始, 后面所有的代码不执行, 直接进入下次循环

循环标签

一般用在多层循环中, 可以给每一个循环都添加一个标签; 可以配合break语句, 直接结束指定的循环. 或者配合continue语句, 直接终止指定循环的执行, 立即进入下次循环

1.3.4 循环流程控制--for

基础语法

java
for (循环起点; 循环条件; 循环步长) {
循环体
}

逻辑:

先执行循环起点, 一般用与定义一个控制循环的变量, 或者给这个变量一个初始值

再判断循环条件是否成立, 如果循环条件成立, 执行循环体, 再执行循环步长, 然后重新判断循环条件

如果循环条件不成立, 循环结束

特殊说明

- 关于语法省略
- for循环的小括号中由三部分组成, 这三个部分都可以省略:
- 循环起点: 变量的定义可以放在循环外
- 循环条件: 如果省略, 默认是true, 可以在循环体中控制跳出循环
- 循环步长: 可以在循环体中控制步长
- 关于大括号
- 如果循环体中只有一句语句, 循环体大括号可以省略; 但是出于规范, 一般我们也不省略
好程序员大数据培训官网: http://bigdata.goodprogrammer.org/

好程序员公众号

  • · 剖析行业发展趋势
  • · 汇聚企业项目源码

好程序员开班动态

More+
  • HTML5大前端 <高端班>

    开班时间:2021-04-12(深圳)

    开班盛况

    开班时间:2021-05-17(北京)

    开班盛况
  • 大数据+人工智能 <高端班>

    开班时间:2021-03-22(杭州)

    开班盛况

    开班时间:2021-04-26(北京)

    开班盛况
  • JavaEE分布式开发 <高端班>

    开班时间:2021-05-10(北京)

    开班盛况

    开班时间:2021-02-22(北京)

    开班盛况
  • Python人工智能+数据分析 <高端班>

    开班时间:2021-07-12(北京)

    预约报名

    开班时间:2020-09-21(上海)

    开班盛况
  • 云计算开发 <高端班>

    开班时间:2021-07-12(北京)

    预约报名

    开班时间:2019-07-22(北京)

    开班盛况
IT培训IT培训
在线咨询
IT培训IT培训
试听
IT培训IT培训
入学教程
IT培训IT培训
立即报名
IT培训

Copyright 2011-2023 北京千锋互联科技有限公司 .All Right 京ICP备12003911号-5 京公网安备 11010802035720号