热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Scala:流程控制结构

Spark底层是Scala实现的,Scala是一种多范式的编程语言,类似于java的编程,设计初衷是要集成面向对象编程和

1、顺序结构:程序按照从上往下,从左往右的顺序依次逐行执行,中间没有任何的判断和跳转。
注:顺序结构在Scala代码中默认流程控制结构
2、选择结构(if语句):
分类:单分支;双分支;多分支


##单分支:只有一个判断条件的if语句

格式:
if(关系表达式){
     代码块

注:关系表达式不管简单还是复杂,结果必须是Boolean(布尔)类型的值


执行流程:
1、先执行关系表达式,看结果是True还是False
2、如果是True,则执行代码块;是False,则不执行


案例:

定义一个变量,用于记录某个学生的成绩,如果成绩大于或等于60分,则打印成绩合格


##双分支结构:只有两个判断条件的if语句
格式:
if(关系表达式){
   代码块1
}else{
  代码块2


执行流程:
1、先执行关系表达式,判断其结果是True还是False
2、如果是True,则执行代码块1;是False,则执行代码块2

案例:定义一个变量记录学生的成绩,如果成绩大于或等于60分,则打印成绩合格;否则打印成绩不合格



##多分支结构:有多个判断条件的if语句
格式:
if(关系表达式1){
  代码块1
}else if(关系表达式2){
代码块2
}else if(关系表达式n){    
代码块n
}else{
代码块n+1
}


执行流程:
1、先执行关系表达式1,判断其结果是True还是False
2、如果是True,则执行代码块1,分支语句结束;如果是False,则执行代码块2,判断其结果是True or False
3、如果是True,则执行代码块2,分支语句结束;如果是False,则执行代码块3,判断其结果是True or False
4、以此类推,如果所有的关系表达式都不满足,则执行最后一个else中的代码



案例:

定义 一个变量记录学生的成绩,根据成绩划分成绩级别,级别如下:
[90,100]      优秀
[75,90)        良好
[60,75)        中等
[0,60])        较差


注意 :
if语句在使用时,注意一下三点:
1、和Java相同,在Scala中,如果大括号{}内的逻辑代码只有一行,则大括号可以省略
2、在Scala中,条件表达式也是有返回值的
3、在Scala中,没有三元表达式,可以使用if表达式代替三元表达式。

##三元表达式(了解):有三个元素组成的表达式。
三个元素:“条件”“真结果”“假结果”
三元表达式的基本格式:条件?真结果:假结果
三元表达式如何对应if…else语句:

条件 ? 真结果 : 假结果
if(条件){真结果}else{假结果}

:三元表达式在使用过程中不能使用break,continue等语句。

案例:
定义一个变量sex,再定义一个result变量,如果sex等于“male”,result等于1,否则result等于0


## 嵌套分支:一个分支结构中又嵌套了另一个分支结构;里面的分支结构叫:内层分支,外边的那个分支结构叫:外层分支

案例:
定义三个变量a,b,c,初始值分别为:10,20,30,通过if分支语句,获取其中的最大值

分析:
1、定义三个变量a,b,c,分别记录进行值
2、定义一个变量max,用来记录获取到的最大值
3、判断a和b之间的大小关系,a是否>=b
4、若a>=b,条件成立,接着比较a和c的大小,获取最大值,并将最大值赋值给max
5、若a6、打印输出最大值max

注:嵌套一般不超过3层




推荐阅读
author-avatar
小明明哦丫头_517
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有