<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # Scala 函數 函數是一組一起執行一個任務的語句。 您可以把代碼劃分到不同的函數中。如何劃分代碼到不同的函數中是由您來決定的,但在邏輯上,劃分通常是根據每個函數執行一個特定的任務來進行的。 Scala 有函數和方法,二者在語義上的區別很小。Scala 方法是類的一部分,而函數是一個對象可以賦值給一個變量。換句話來說在類中定義的函數即是方法。 我們可以在任何地方定義函數,甚至可以在函數內定義函數(內嵌函數)。更重要的一點是 Scala 函數名可以由以下特殊字符:**+, ++, ~, &,-, -- , \, /, :** 等。 ## 函數聲明 Scala 函數聲明格式如下: ``` def functionName ([參數列表]) : [return type] ``` 如果你不寫等于號和方法主體,那么方法會被隱式聲明為"抽象(abstract)",包含它的類型于是也是一個抽象類型。 ## 函數定義 方法定義由一個def 關鍵字開始,緊接著是可選的參數列表,一個冒號":" 和方法的返回類型,一個等于號"=",最后是方法的主體。 Scala 函數定義格式如下: ``` def functionName ([參數列表]) : [return type] = { function body return [expr] } ``` 以上代碼中 **return type** 可以是任意合法的 Scala 數據類型。參數列表中的參數可以使用逗號分隔。 以下函數的功能是將兩個傳入的參數相加并求和: ``` object add{ def addInt( a:Int, b:Int ) : Int = { var sum:Int = 0 sum = a + b return sum } } ``` 如果函數沒有返回值,可以返回為 **Unit**,這個類似于 Java 的 **void**, 實例如下: ``` object Hello{ def printMe( ) : Unit = { println("Hello, Scala!") } } ``` ## 函數調用 Scala 提供了多種不同的函數調用方式: 以下是調用方法的標準格式: ``` functionName( 參數列表 ) ``` 如果函數使用了實例的對象來調用,我們可以使用類似java的格式 (使用 **.** 號): ``` [instance.]functionName( 參數列表 ) ``` 以上實例演示了定義與調用函數的實例: ``` object Test { def main(args: Array[String]) { println( "Returned Value : " + addInt(5,7) ); } def addInt( a:Int, b:Int ) : Int = { var sum:Int = 0 sum = a + b return sum } } ``` 執行以上代碼,輸出結果為: ``` $ scalac Test.scala $ scala Test Returned Value : 12 ``` Scala也是一種函數式語言,所以函數是 Scala 語言的核心。以下一些函數概念有助于我們更好的理解 Scala 編程: | 函數概念解析接案例 | | --- | --- | | [函數傳名調用(Call-by-Name)](/scala/functions-call-by-name.html) | [指定函數參數名](/scala/functions-named-arguments.html) | | [函數 - 可變參數](/scala/functions-variable-arguments.html) | [遞歸函數](/scala/recursion-functions.html) | | [默認參數值](/scala/functions-default-parameter_values.html) | [高階函數](/scala/higher-order-functions.html) | | [內嵌函數](/scala/nested-functions.html) | [匿名函數](/scala/anonymous-functions.html) | | [偏應用函數](/scala/partially-applied-functions.html) | [函數柯里化(Function Currying)](/scala/currying-functions.html) |
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看