Scala學習第一天(九) 函式

2021-10-02 18:32:58 字數 1742 閱讀 9138

scala支援函式式程式設計,將來在spark/flink程式中,會大量使用到函式
語法

val 函式變數名 = (引數名:引數型別,引數名:引數型別......) => 函式體

函式是乙個物件(變數)

類似於方法,函式也要輸入引數和返回值

函式定義不需要使用 def 定義

無需指定返回值型別

示例

1.定義乙個兩個數值相加的函式

2.呼叫該函式

參考**

scala> val add = (x:int, y:int) => x + y

add: (int, int) => int = scala> add(1,2)

res0: int = 3

結果

定義

方法是隸屬於類或者物件的,在執行時,它是載入到jvm的方法區中

可以將函式物件賦值給乙個變數,在執行時,它是載入到jvm的堆記憶體中

示例

方法無法賦值給變數
參考**

scala> def add(x:int,y:int)=x+y

add: (x: int, y: int)int

scala> val a = add

:12: error: missing argument list for method add

you can make this conversion explicit by writing `add _` or `add(_,_)` instead of `add`.

val a = add

結果

定義

有時候需要將方法轉換為函式,作為變數傳遞,就需要將方法轉換為函式

使用 _ (下劃線)即可將方法轉換為函式

示例

1.定義乙個方法用來進行兩個數相加

2.將該方法轉換為乙個函式,賦值給變數

參考**

scala> def add(x:int,y:int)=x+y

add: (x: int, y: int)int

scala> val a = add _

a: (int, int) => int =

結果

學習第一天

知識是學會的,不是教會的 程式設計 驗證性或體驗性 創造性 學程式設計的4個階段 1.能看懂別人的 除錯別人的 2.能修改別人的 3.能拷貝別人的 做自己的事 4.能自己設計編寫 方法 多讀 做記錄 執行 修改 執行 練習,光說不練假把式 刷oj總結 寫部落格或許是個不錯的選擇 學生和已經工作的程式...

Scala 學習第一天 簡單的常用方法

object helloscala 說明 1 def 表示是乙個方法 這是乙個關鍵字 2 main表示方法名字,表示程式入口 3 args array string 表示形參,scala的特點是將引數名在前 型別在後 4 array string 表示型別陣列 5 unit 表示該函式的返回值為空 ...

php學習第一天

第一章 安裝 php語言的核心特性是強大的字串和資料處理工具,還提供物件導向的支援。可以用c寫自己的php擴充套件模組。php能做什麼?伺服器指令碼,命令列指令碼,客戶端gui應用,安裝php環境 www.php.net,www.apache.org 2解壓後放在同一目錄下 3對apache和php...