Scala學習筆記 控制結構和函式 2

2021-08-09 13:18:36 字數 384 閱讀 8693

7.函式

scala除了方法外還支援函式。方法對物件進行操作,函式不是。

要定義函式,需要給出函式名、引數和函式體,例如:

def abs (x: double) =if(x >= 0) x else -x

只要函式不是遞迴的,一般不需要指定返回型別。scala編譯器可以通過= 符號右側的表示式的型別推斷出返回型別

如果函式體需要多個表示式完成,可以用**塊。塊中最後乙個表示式的值就是函式的返回值。例如:

def fac(n:int)= else throw new exception("x should not be negative")

第乙個分支型別是double,第二個分值型別是nothing,因此if/else表示式的型別就是double

Scala學習(二 控制結構)

1 if語句,整體和c 一樣,我寫一點可能大家不太熟悉的東西。object helloworld 2 終止語句 單行多個語句 var x 1 x x 1需要加乙個 多行單個語句 var x 1 2 這裡用 這種運算子結尾 3 塊表示式,在 裡面的表示式 import scala.math.sqrt ...

scala基礎 控制結構和函式

這兩周專案提測與上線,好久沒寫scala的筆記了 scala中幾乎構造的所有語法結構都有值 1 scala中if表示式也是有值的 2 塊中最後乙個達式的值就是該塊的值 3 scala中的unit等價於c c 語言中常用的void 4 scala中每個表示式都有乙個型別 5 if a 0 positi...

《快學Scala》 控制結構和函式

if x 0 1 else 1 上述表示式的值是1或 1,具體是哪乙個取決於x的值。你可以將if else的值賦值給變數 val s if x 0 1 else 1 這與如下語句的效果一致 if x 0 s 1 else s 1 以上兩個的區別在於 第乙個可以用來初始化val 第二種s必須是var。...