04基本运算

45 阅读2分钟

一. Scala的算术运算符

Scala中的算术运算符: + - * / %

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

    println(2+1) // 3
    println(2-1) // 1
    println(2*3) // 6
    println(5/2) // 5除以2 =2 ?不是2.5?
    // Int / Int 结果还是Int

    println(5/2.0) //Int / Double 结果还是 Double

    println(5%2) // 1 模,取余 5除以2的余数。
    println(123%10) // ==> 3
  }

}

结果如图:

屏幕截图 2025-09-11 081744.png

二. Scala的关系运算符

关系运算符会得到Bool值。scala中的关系运算符如下:

== 等于

!= 不等于

> 大于

< 小于

>= 大于等于

<= 小于等于

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

    println(3 == 2) // false
    println(3 != 2) // true
    println(3 > 2) // true
    println(3 < 2) // false
    println(3 >= 2) // true
    println(3 <= 2) //false
    
  }

}

结果如图:

屏幕截图 2025-09-11 082938.png

三. Scala的逻辑运算符

Scala中的逻辑运算跟Java中一样,也是与、或、非三种情况,分别介绍如下。

与:&& 运算表达式有一个为假,则整个表达式为假false。

或:|| 运算表达式有一个为真,则整个表达式为真true。

非:! 就是取反的意思,与参与表达式相反。

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

    // 逻辑运算符
    // 与:&& 。 全真为真,一假全假

    var a = 1 > 2 && 2 < 3
    println(a)

    println(2>1 && 3>2 && 4>3)
    println(2>1 && 3>2 && 4>5)

    // 或: ||。 一真为真,全假为假

    println(2>1 || 2<1)
    println(2>3 || 2<1 || 3>5)

    // 非:! 取反

    println(2>1)
    var b = 2 > 1

    println( !b )
    println( !(2 > 1) )
  }

}

结果如图:

屏幕截图 2025-09-11 083958.png

【案例】判断一个年份是否是闰年 根据国际标准,一个年份被视为闰年的条件是,如下条件满足任意一个:

(1)能够被4整除,并且不能被100整除的年份是闰年。

(2)能够被400整除的年份同样也是闰年。

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

    // 请输入一个年份,判断是否是闰年

    print("请输入一个年份:")
    val year = scala.io.StdIn.readInt()
    val resul:Boolean = ( year % 4 ==0 && year % 100 !=0) || (year % 400 == 0)

    // 输出结果
    if( resul ) {
      println(s"$year 是闰年")
    }
    else {
      println(s"$year 不是闰年")
    }
  }

}

屏幕截图 2025-09-11 090207.png

【练习】求4位数中的各个位数上的值

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

    // 求4位数中的各个位数上的值。例如 var a = 1234 如何得到1,2,3,4?

    var a = 1234;

    println( a / 1000  ) // 1
    println( (a / 100) % 10  ) // 2
    println( (a / 10) % 10  ) // 3
    println( a % 10 ) // 4

  }

}

结果如图:

屏幕截图 2025-09-11 092255.png