Scala 函數(shù)

2022-05-13 15:01 更新

Scala有函數(shù)和方法。

Scala方法是一個(gè)具有名稱(chēng)和簽名的類(lèi)的一部分。 Scala中的函數(shù)是一個(gè)可以分配給變量的完整對(duì)象。

函數(shù)定義可以出現(xiàn)在源文件中的任何位置。

不帶參數(shù)的函數(shù)

在Scala中定義函數(shù),請(qǐng)使用def關(guān)鍵字,后跟方法名和方法體,如下所示。

def hello() = {"Hello World!"} 

等號(hào)=用作方法簽名和方法體之間的分隔符。

我們可以使用hello()hello調(diào)用此函數(shù)。

object Main {
  def main(args: Array[String]) {
      def hello() = {"Hello World!"} 
      println(hello );
  }
}

注意

我們還可以包括可選的返回類(lèi)型,如下所示。

def hello():String = {"Hello World!"} 

我們可以從方法體中完全刪除括號(hào)。

def hello() = "Hello World!" 

我們也可以從方法簽名中刪除括號(hào)。

def hello = "Hello World!" 

帶參數(shù)的函數(shù)

以下代碼顯示如何使用參數(shù)創(chuàng)建函數(shù)。

def square (i:Int) = {i*i} 
函數(shù)的主體是表達(dá)式, 其中最后一行變?yōu)楹瘮?shù)的返回值。

我們可以調(diào)用這個(gè)函數(shù)為square(2)。

object Main {
  def main(args: Array[String]) {
      def square (i:Int) = {i*i} 
      println(square(2) );
  }
}

我們可以在函數(shù)中提供多個(gè)參數(shù)。多個(gè)參數(shù)之間用逗號(hào)分隔,如以下示例所示。

def add(x: Int, y: Int): Int = { x + y } 

我們現(xiàn)在可以通過(guò)將實(shí)際參數(shù)傳遞給add函數(shù)來(lái)調(diào)用這個(gè)函數(shù)。

object Main {
  def main(args: Array[String]) {
      def add(x: Int, y: Int): Int = { x + y } 
      
      println(add(5, 5) );
  }
}
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)