scala學習筆記 變長引數(5)

2022-07-23 13:27:30 字數 397 閱讀 2562

變長引數

在scala中,有時我們需要將函式定義為引數個數可變的形式,則此時可以使用變長引數定義函式。

1 def sum(nums: int*) =

67 sum(1, 2, 3, 4, 5)

使用序列呼叫變長引數

在如果想要將乙個已有的序列直接呼叫變長引數函式,是不對的。比如val s = sum(1 to 5)。此時需要使用scala特殊的語法將引數定義為序列,讓scala直譯器能夠識別。這種語法非常有用!一定要好好主意,在spark的原始碼中大量地使用到了。

val s = sum(1 to 5: _*)

1

案例:使用遞迴函式實現累加

23 def sum2(nums: int*): int =

Scala學習筆記 型別引數化陣列

scala看得頭痛,記一下筆記。valgreetstrings newarray string 3 greetstrings 0 hello greetstrings 1 greetstrings 2 world n for i 0to2 print greetstrings i 說明 1 scal...

Scala學習筆記

scala學習筆記 一.scala中集合的常用方法 首先定義兩個陣列集合,用於測試 scala val arr1 array 1,2,3,4 arr1 array int array 1,2,3,4 scala val arr2 array 3,4,5,6 arr2 array int array ...

Scala學習筆記

1 閉包 var a 3 var addfun x int x a var b addfun 10 println b addfun 就是個和物件無關的函式,區域性變數,使用方法和函式一樣,但是好像不推薦這種寫法。2 類的建立,簡單使用abstract class bparent 構造函式引數會自動...