if 语句

54 阅读2分钟

一,大数问题

一种整数都有自己的表达范围,例如Int类型的最大值是2147483647,一旦超过了这个范围就会报错,或者是导致计算异常。

object Main {
	def main(args: Array[String]) = {
	    
	  // 一个字符串,表示数字的字符串
	    var a = BigInt("11111111111111111111111")
	    var b = BigInt("11111111111111111111111")
	    var c = a * b
	    
		println(c)
	}
}

二,if 语句

f这个单词表示“如果”,if语句在可以让程序有选择性地执行。

它的语法比较格式比较简单,与java中的一致。

1. 单分支。 if(){}

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

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

案例1:判断是否成年,并输出

object Main {
	def main(args: Array[String]) = {
	    print("请输入你的年龄:")
	    var age = scala.io.StdIn.readInt()
	    
	    if(age >= 18){
	        println("成年人")
	    } else {
	        println("未成年")
	    }
	}
}

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

object Main {
	def main(args: Array[String]) = {

  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 等;

object Main {
	def main(args: Array[String]) = {
	    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语句是有返回值的,它的执行过程如下:

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

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

案例如下:判断一个数是奇数还是偶数

object Main {
	def main(args: Array[String]) = {
	    
	    // if语句的返回值
	    val a = if (2 > 1) {
	        "ok"
	    } else {
	        "no"
	    }
	    
	    // 判断一个数是否为奇,偶数
	    val num = 11 
	    val result = if(num % 2 == 1){
	        "奇数"
	    } else {
	        "偶数"
	    }
	    println(result)
	}
}