scala函式定義的幾種方法

2021-06-28 23:10:16 字數 600 閱讀 7727

scala看了有幾天了,也試著寫了「hello world」,今天試著練習伴生物件的時候,突然搞不明白scala伴生物件中定義的函式,並不能按我的想法工作。

scala真是個非常靈活的語言,這裡還是總結下函式定義的幾種情況吧。

1、規規矩矩的寫法,帶有等號、大括號和返回值型別的形式

def myfunc(var p1 : int) : int =

def myfunc(var p1 : int) : unit =

2、非unit返回值的情形下,省略返回值,讓程式根據**塊,自行判斷。注意,這裡等號還是要的

def myfunc(var p1 : int) =

3、unit返回值的情況下,直接省略返回值型別和等號

def myfunc(var p1 : int)

4、函式只有一行的情形下省略返回值和大括號

def max2(x: int, y: int) = if (x > y) x else y

def greet() = println("hello, world!")

也就這麼多情況了吧,再遇到新的情況再補充吧,太靈活了,我這死腦子還是玩不轉

scala定義函式的幾種方式

scala是物件導向的語言,同時也是函式式程式語言。函式在scala中是一等公民,它和變數一樣,既可以作為其他函式的引數,也可以將函式賦值給乙個變數。在scala中定義函式有很多方式,不熟悉scala的同學初看之時難免被搞得暈頭轉向。這裡,我試圖按照函式是否有返回值來總結一下函式定義的規律,僅供參考...

Scala 定義函式的幾種方式

scala中定義函式的幾種方式如下 1.規範化寫法,scala 函式的返回值是最後一行 def addint a int,b int int unit,是scala語言中資料型別的一種,表示無值,用作不返回任何結果的方法 def returnunit unit 省略返回值型別和等於號,返回的是 de...

C 定義比較函式的幾種方法

為了說明c 定義比較函式的幾種方法,下面將以sort函式為例進行說明。1.預設的內建比較函式,將按照物件內定義的 運算子由小到大排序 include include include include include using namespace std int main sort vec.begin...