1. 程式人生 > >Scala方法與函式的區別

Scala方法與函式的區別

1. 函式在scala語言中,是函式程式設計的 “頭等公民”

2. 方法是 scala 面向物件中的概念,主要定義在類,特質,抽象類中

3. 函式是一個物件,方法本質就是類中的一個普通的方法

4. 函式可以作為引數進行傳遞,可以作為返回值返回,但是方法不行

5. 方法可以通過一定的語法轉成函式

def eat()={ print("正在吃") } //將eat方法轉函式 val eat1=eat _

注意 : 方法的柯里化

概念: 將方法輸入的多個引數,轉換成一個引數的過程,就是方法的柯里化(函式的柯里化)

//add def add(a:Int ,b:Int)={ a+b }

//柯里化方法 def add1(a:Int)(b:Int)={ a+b }

作用: 提高函式的執行效率,相當於對函式進行一個消元求解的過程