内建控制-if语句

51 阅读2分钟

内容如下:

1. if语句的作用

2. if语句的格式

3. if 语句的返回值

if这个单词表示“如果”,if语句在可以让程序有选择性地执行。 它的语法比较格式比较简单,与java中的一致。

a. 单分支。 if(){}

b. 双分支   if(){} else {}

c. 多分支   if(){} else if(){} else if(){} else {}

(一)if语句的格式和执行流程

Scala中的if语句的语法格式如下:

if(布尔表达式 1){  
   // 如果布尔表达式 1 为 true 则执行该语句块  
}else if(布尔表达式 2){  
   // 如果布尔表达式 2 为 true 则执行该语句块  
}else if(布尔表达式 3){  
   // 如果布尔表达式 3 为 true 则执行该语句块  
}else {  
   // 如果以上条件都为 false 执行该语句块  
}

(二)案例一判断是否成年

编写程序实现:提示用户输入年龄,判断是否成年。

[编码示范] 判断是否成年,并输出

def main(args: Array[String]): Unit = {
    // 从键盘输入一个年龄,判断是否成年

  val age = StdIn.readInt()

  if (age >= 18) {

    println("成年")

  }  else {

    println("未成年")

  }

}

[编码示范] 判断一个数是否为奇、数 批注 2025-09-22 155702.png

[学生练习]

(三)案例二比较正方形和长方形面积大小

输入一个正方形的边长(a)及一个长方形的长与宽(b、c),然后比较两个图形的面积。如果长方形面积大,输出 “RECTANGLE”;如果正方形面积大,输出 “SQUARE”,如果一样大,输出 “SAME”。

[编码讲解] 批注 2025-09-22 155819.png

(四)案例三输入分数输出等级

[案例]:输入正整数分数,输出对应的等级符号。规则如下:[90,100] 为 A 等;[80,89]  为 B 等;[70,79]  为 C 等;[60,69]  为 D 等;[0, 59]  为 E 等;

[分析] 使用多分支结构

[编码讲解]

批注 2025-09-22 155742.png

(五)if语句的返回值

[提问]:java中的if有返回值吗?

Scala中的if语句是有返回值的,它的执行过程如下:

val a= if(布尔表达式) {  
   表达式1  
} esle{  
   表达式2  
}

[讲解] 如果布尔表达式为true,则会把表达式1的值赋给变量a。如果布尔表达式为false,则会把表达式2的值赋给变量a。即如果布尔表达式为true,a=表达式1,否则,a=表达式2。

示例:判断一个数是奇数还是偶数

[编写代码演示]

var i = 2;

var c = if(i%2 ==0){"偶数"} else {"奇数"}

(六)案例四

[讲授]改造案例三的代码,通过if的返回值来获取等级。 批注 2025-09-22 155852.png