19.1 中置操作符

我们以前经常这样写: 1 to 9

这里的 to 就是一个操作符. 它带有两个参数: 一个隐式参数一个显示参数.

上面的表达式实际是在调用1.to(9).

这样的表达式称为中置表达式, to这样的操作符称为中置操作符.

我们也可以在自己的类中定义操作符:

package com.atguigu.akka

/**
  * 表示一个分数 x / y
  *
  * @param x
  * @param y
  */
class Fraction(x: Int, y: Int) {
    private val x1 = x
    private val y1 = y

    /**
      * 定义两个分数的相乘
      * @param other
      * @return
      */
    def *(other: Fraction): Double = {
        new Fraction(x1 * other.x1, y1 * other.y1).valueOf
    }

    /**
      * 计算出来这个分数的小数值
      * @return
      */
    def valueOf = 1.0d * x1 / y1

}


object Test {
    def main(args: Array[String]): Unit = {
        // 计算 (1/2) * (3/4)
        println(new Fraction(1, 2) * new Fraction(3, 4))
    }
}
Copyright © 尚硅谷大数据 2019 all right reserved,powered by Gitbook
该文件最后修订时间: 2019-07-02 08:12:45

results matching ""

    No results matching ""