- 函式的形參列表可以是多個, 如果函式沒有形參,呼叫時可以不帶()
package com.xcu.chapter06.homework
object demo01
}class
dog}
// 輸出結果: 狗正在吃骨頭!
- 形參列表和返回值列表的資料型別可以是值型別和引用型別object demo01
def create
(dog: dog)
: dog =
}class
dog// 輸出結果:金毛
- scala 中的函式可以根據函式體最後一行**自行推斷函式返回值型別。那麼在這種情況下,return 關鍵字可以省略object demo01
def create
(dog: dog)
: dog =
}class
dog// 輸出結果:金毛
- 如果函式明確使用 return 關鍵字,那麼函式返回就不能使用自行推斷了,這時要明確寫成 : 返回型別 = ,當然如果你什麼都不寫,即使有 return 返回值為() .object demo01
def create
(dog: dog)
: 返回值型別=
}class
dog
- 如果函式用unit明確宣告無返回值,那麼函式體中即使使用 return 關鍵字也不會有返回值object demo01
def mysum
(a: int, b: int)
: unit =
}// 輸出結果:()
-如果明確函式無返回值或不確定返回值型別,那麼返回值型別可以省略object demo01
def mysum
(a: int)=}
// 輸出結果:2
遞迴函式未執行之前是無法推斷出來結果型別,在使用時必須有明確的返回值型別
-scala 語法中任何的語法結構都可以巢狀其他語法結構(靈活),即:函式中可以再宣告/定義函式
不在演示
- scala 函式的形參,在宣告引數時,直接賦初始值(預設值),這時呼叫函式時,如果沒有指定實參,則會使用預設值。如果指定了實參,則實參會覆蓋預設值
object demo01
def call_name
(name: string =
"老王")=
}// 輸出結果:老李
- scala 函式支援可變引數
可變引數要放在最後
object demo01
def sum
(a: int, args: int*)=
}// 輸出結果:15
Scala函式注意事項和細節討論
函式的形參列表可以是多個,如果函式沒有形參,呼叫時可以不帶 形參列表和返回值列表的資料型別可以是值型別和引用型別 object details01 def test01 n1 int,tiger tiger tiger class tiger scala中的函式可以根據函式體最後一行 自行推斷函式返...
go 函式使用時的注意事項和細節
函式的心餐列表可以時多個,返回值列表也可以是多個 形參列表和返回值列表的資料型別可以是值型別和引用型別 函式的命名遵循識別符號命名規範,首字母不能是數字,首字母大寫該函式可以被本包檔案和其他包檔案使用,首字母小寫,將只能被本包檔案使用,其他包檔案不能使用 函式中的變數是區域性的,函式外不生效 基本資...
Go 結構體使用注意事項和細節
結構體 type point struct 結構體 type rect struct func main point r1有四個int,在記憶體中是連續分布 列印位址 fmt.printf r1.leftup.x 位址 p r1.leftup.y 位址 p r1.rightdown.x 位址 p r...