Scala内建控制-if语句

45 阅读2分钟

一、if语句

if语句在可以让程序有选择性地执行。

1. 单分支。 if(){}

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

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

if语法格式:

if(布尔表达式 1){  
   // 如果布尔表达式 1 为 true 则执行该语句块  
}else if(布尔表达式 2){  
   // 如果布尔表达式 2 为 true 则执行该语句块  
}else if(布尔表达式 3){  
   // 如果布尔表达式 3 为 true 则执行该语句块  
}else {  
   // 如果以上条件都为 false 执行该语句块  
}
案例1:判断是否成年

提示用户输入年龄,判断是否成年。

        print("请输入你的年龄:")
        var age = scala.io.StdIn.readInt()
		
        if(age >= 18){
            println("成年人")
	}else {
            println("未成年人")
	}

输出结果为:成年人

案例2:比较正方形和长方形面积大小

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

      print("输入正方形的边长:")
	    val a = scala.io.StdIn.readInt()
	    
	    print("输入长方形的长:")
	    val b = scala.io.StdIn.readInt()
	    
	    print("输入长方形的宽:")
	    val c = scala.io.StdIn.readInt()
	    
	    
	    if (b*c > a*a){
	        println("RECTANGLE")
	    } else if(b*c < a*a) {
	        println("SQUARE")
	    } else {
	        println("SAME")
案例3:输入分数输出等级

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

		println("请输入分数:")
		val 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语句是有返回值的,它的执行过程如下:

	    // if语句的返回值
		val a = if(2 > 1){
		    println("2>1是成立的。")
		    "ok"
		} else {
		    "no"
		}
		println(a)

输出结果为:2>1是成立的

案例:判断是否为奇、偶数
	    // 判断一个数是否为奇数、偶数
		val num = 11
		val result = if(num % 2 == 1){
		    "奇数"
		}else {
		    "偶数"
		}
		
		println(result)

输出结果为:奇数