教育行業(yè)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 分享到:
和我們在線交談!