if语句

49 阅读1分钟

Scala的位运算符

    //位运算
    /**
     * 10进制            2进制
     *   0                0
     *   1                1
     *   2               10
     *   3               11
     *   4              100
     *   5              101
     *   6              110
     *   & 按位与运算符  0 & 1 = 0,1 & 0 = 0,0 & 0 = 0,1 & 1 = 1
     *   | 按位或运算符  0 | 1 = 1,1 | 0 = 1,0 | 0 = 0,1 | 1 = 1
     */

Scala中运算符的优先级

先乘除 后加减

    val result = 10 - 2 + 3 * 4 / 2
        println(result)   ----14

<!---->

    val a = true
    val b = false
    val c = false
        println(a || b && c)   ----true
  1. 乘(*) 除(/) 模(%) >加(+) 减(-)
  2. 算术(+ - * / %) > 关系(> < >= !=) > 赋值(=)
  3. && > | |

精度问题

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

        val a = 0.1
        val b = 0.2
        val c = 0.3

        println(a + b == c)     //false

        println(1 + 2 == 3)     //ture

        println(0.1 + 0.2 == 0.3)     //false

        println(BigDecimal(0.1) + BigDecimal(0.2) == BigDecimal(0.3))     //true

        println(0.1 + 0.1 == 0.2)     //true
      }
    }

if语句

image.png

练习题

1.image.png

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

        print("请输入正方形的边长 a:")
        val a = scala.io.StdIn.readInt()

        print("请输入长方形的长 b:")
        val b = scala.io.StdIn.readInt()

        print("请输入长方形的宽 c:")
        val c = scala.io.StdIn.readInt()


        if(b*c > a*a){
          println("长方形面积大")
        }else if(b*c < a*a){
          println("正方形面积大")
        }else {
          println("一样大")
        }
      }
    }

image.png

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

        print("请输入分数:")
        val a = scala.io.StdIn.readInt()

        if(a >= 90 && a <= 100){
          println("A等")
        }else if(a >= 80 && a <= 89){
          println("B等")
        }else if(a >= 70 && a <= 79){
          println("C等")
        }else if(a >= 60 && a <= 69) {
          println("D等")
        }else if(a >= 0 && a <= 59) {
          println("E等")
        }else {
          println(false)
        }
      }
    }

最后一个else在语法上是可以省略的

if语句的返回值