教育行業A股IPO第一股(股票代碼 003032)

                      全國咨詢/投訴熱線:400-618-4000

                      Scala中如何使用def語句定義方法?

                      更新時間:2022年09月16日17時37分 來源:傳智教育 瀏覽次數:

                      Scala和Java一樣也有方法和函數。Scala的方法是類的一部分,而函數是一個對象可以賦值給一個變量。換句話來說,在類中定義的函數即是方法。Scala中可以使用df語句和val語句定義函數,而定義方法只能使用def語句。下面來講解Scala的方法。

                      Scala方法的定義格式如下:

                      從上面的代碼可以看出,Scala的方法是由多個部分組成的,具體如下。

                      def functionName([參數列表]):[return type]={
                          function body
                          return [expr]
                      }

                      ·def:Scala的關鍵字,并且是固定不變的,一個方法的定義是由def關鍵字開始的。

                      ·functionName:Scala方法的方法名。

                      ·([參數列表]):[return type]:Scala方法的可選參數列表,參數列表中的每個參數都有一個名字,參數名后跟著冒號和參數類型。

                      ·function body:方法的主體。

                      ·return [expr]:Scala方法的返回類型,可以是任意合法的Scala數據類型。若沒有返回值,則返回類型為Unit。

                      下面,定義一個方法add(),實現兩個數相加求和,示例代碼如下:

                      def add(a:Int,b:Int):Int={
                          var sum:Int =0
                          sun =a +b
                          return sum
                      }

                      Scala的方法調用的格式如下:

                      //沒有使用實例的對象調用格式
                      functionName(參數列表)
                      //方法由實例的對象來調用,可以使用類似java的格式(使用”.”號)
                      [instance.]functionName(參數列表]

                      下面,在類Test中,定義一個方法addInt(),實現兩個整數相加求和。在這里,通過“類名.方法名(參數列表)”來進行調用,示例代碼如下:

                      scala>:paste                                 #多行輸人模式的命令
                      // Entering paste mode (ctrl-D to finish)
                      object Test{
                         def addInt(a:Int,b:Int):Int={
                             var sum:Int=0
                             sum=a+b
                             return sum
                         }
                      }
                      // Exiting paste mode, now interpreting.
                      defined object Test
                      scala>Test.addInt(4,5)
                      res0: Int =9






                      0 分享到:
                      天堂网AV