if这个单词表示“如果”,if语句在可以让程序有选择性地执行。
它的语法比较格式比较简单,与java中的一致。
1. 单分支。 if(){}
2. 双分支。 if(){} else {}
3. 多分支。 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 执行该语句块
}
- 年龄判断成年案例
编写程序实现:提示用户输入年龄,判断是否成年。
// 请输入年龄,判断是否成年
print("请用户输入年龄:")
var age = scala.io.StdIn.readInt()
if(age >= 18){
println("成年")
} else {
println("未成年")
}
- 正方形与长方形面积比较案例
输入一个正方形的边长(a)及一个长方形的长与宽(b、c),然后比较两个图形的面积。如果长方形面积大,输出 “RECTANGLE”;如果正方形面积大,输出 “SQUARE”,如果一样大,输出 “SAME”。
// 请输入正方形的边长(a)和一个长方形的长与宽(b,c),判断两个面积大小
print("请用户输入正方形边长:")
var a = scala.io.StdIn.readInt()
print("请用户输入长方形的长:")
var b = scala.io.StdIn.readInt()
print("请用户输入长方形的宽:")
var c = scala.io.StdIn.readInt()
var d = a * a
var e = b * c
if( d >= e){
println("SQUARE")
} else if(d <= e) {
println("RECTANGLE")
}else if(d == e){
println("SAME")
}
-
分数输出等级案例
输入正整数分数,输出对应的等级符号。规则如下:[90,100] 为 A 等;[80,89] 为 B 等;[70,79] 为 C 等;[60,69] 为 D 等;[0, 59] 为 E 等;
// 请输入分数输出等级
print("请用户输入分数:")
val score = scala.io.StdIn.readInt()
if( 90 <= score && score <= 100){
println("A")
} else if(80 <= score && score <= 89) {
println("B")
}else if(70 <= score && score <= 79){
println("C")
}else if(60 <= score && score <= 69){
println("D")
}else if(0 <= score && score <= 59) {
println("E")
}else{
// 如果上面条件都不满足,就说明分数不是有效范围
println(s"$score 不是有效范围的分数")
}
if语句的返回值
Scala中的if语句是有返回值的,它的执行过程如下:
val a= if(布尔表达式) {
表达式1
} esle{
表达式2
}
如果布尔表达式为true,则会把表达式1的值赋给变量a。如果布尔表达式为false,则会把表达式2的值赋给变量a。即如果布尔表达式为true,a=表达式1,否则,a=表达式2。
print("请用户输入分数:")
val s = scala.io.StdIn.readInt()
val result = if(s >= 60){
"及格"
}else{
"不及格"
}
println(result)