Scala方法重載

Scala提供了方法重載功能,使我們能夠定義相同名稱但使用不同參數或數據類型的方法。 它有助於優化代碼。

Scala方法通過使用不同的參數重載示例

在下面的例子中,定義了兩個具有不同數量的參數但具有相同數據類型的add方法。

class Arithmetic{  
    def add(a:Int, b:Int){  
        var sum = a+b  
        println(sum)  
    }  
    def add(a:Int, b:Int, c:Int){  
        var sum = a+b+c  
        println(sum)  
    }  
}  

object Demo{  
    def main(args:Array[String]){  
        var a  = new Arithmetic();  
        a.add(10,20);  
        a.add(10,20,30);  
    }  
}

將上面代碼保存到源文件:Demo.scala中,使用以下命令編譯並執行代碼 -

D:\software\scala-2.12.3\bin>scalac Demo.scala
D:\software\scala-2.12.3\bin>scala Demo
30
60

Scala通過使用不同的數據類型方法重載示例

在下面的例子中,創建了一個使用兩個相同數量的參數但是不同的數據類型的add方法。

class Arithmetic{  
    def add(a:Int, b:Int){  
        var sum = a+b  
        println(sum)  
    }  
    def add(a:Double, b:Double){  
        var sum = a+b  
        println(sum)  
    }  
}  
object Demo{  
    def main(args:Array[String]){  
        var b = new Arithmetic()  
        b.add(10,20)  
        b.add(10.0,20.1)  

    }  
}

將上面代碼保存到源文件:Demo.scala中,使用以下命令編譯並執行代碼 -

D:\software\scala-2.12.3\bin>scalac Demo.scala
D:\software\scala-2.12.3\bin>scala Demo
30
30.1