一. if语句的格式和执行流程
Scala中的if语句的语法格式如下:
1. 单分支 if(){}
2. 双分支 if(){} else {}
3. 多分支 if(){} else if(){} else if(){} else {}
if(布尔表达式 1){
// 如果布尔表达式 1 为 true 则执行该语句块
}else if(布尔表达式 2){
// 如果布尔表达式 2 为 true 则执行该语句块
}else if(布尔表达式 3){
// 如果布尔表达式 3 为 true 则执行该语句块
}else {
// 如果以上条件都为 false 执行该语句块
}
object base26 {
def main(args: Array[String]): Unit = {
/*
循环守卫
当后面的条件都满足的时候,才去执行循环体的内容
格式:
for(循环变量 <- 起点 to 终点; if(条件1); if(条件2);...if(条件n)) {
println(操作变量)
}
*/
// 输出1 - 100 中的能整除 2,3,4 的数字
for(i <- 1 to 100; if(i%2 == 0);if(i%3 == 0);if(i%4 == 0)) {
println(i)
}
}
}
案例
案例一判断是否成年
object base15 {
def main(args: Array[String]): Unit = {
print("请输入你的年龄:")
var age = scala.io.StdIn.readInt()
if (age >= 18) {
println("成年人")
} else {
println("未成年人")
}
}
}
案例二比较正方形和长方形面积大小
输入一个正方形的边长(a)及一个长方形的长与宽(b、c),然后比较两个图形的面积。 如果长方形面积大,输出 “RECTANGLE”;如果正方形面积大,输出 “SQUARE”,如果一样大,输出 “SAME”。
object base16 {
def main(args: Array[String]): Unit = {
println("请输入正方形的边长:")
var a = scala.io.StdIn.readInt()
println("请输入长方形的长:")
var b = scala.io.StdIn.readInt()
println("请输入长方形的宽:")
var c = scala.io.StdIn.readInt()
if (b*c > a*a) {
println("RECTANGLE")
} else if (b*c < a*a) {
println("SQUARE")
} else {
println("SAME")
}
}
}
案例三输入分数输出等级
输入正整数分数,输出对应的等级符号。 规则如下:[90,100] 为 A 等;[80,89] 为 B 等;[70,79] 为 C 等;[60,69] 为 D 等;[0, 59] 为 E 等
object base17 {
def main(args: Array[String]): Unit = {
println("请输入正整数分数:")
var score = scala.io.StdIn.readInt()
if (score >= 90 && score <= 100) {
println("A")
} else if (score >= 80 && score <= 89) {
println("B")
} else if (score >= 70 && score <= 79) {
println("C")
} else if (score >= 60 && score <= 69) {
println("D")
} else if (score >= 0 && score <= 59) {
println("E")
} else {
println("分数不在合理的范围之内!!!")
}
}
}
if语句的返回值
Scala中的if语句是有返回值的,它的执行过程如下:
val a= if(布尔表达式) {
表达式1
} esle{
表达式2
}
例如:
object base18 {
def main(args: Array[String]): Unit = {
// if语句的返回值
val a = if (2 > 1){
println("2>1是成立的")
"ok"
} else {
"no"
}
// 判断一个数是否为奇、偶数
val num = 11
val result = if(num % 2 ==1){
"奇数"
} else {
"偶数"
}
println(result)
}
}