<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之旅 廣告
                # Lua 函數 在Lua中,函數是對語句和表達式進行抽象的主要方法。既可以用來處理一些特殊的工作,也可以用來計算一些值。 Lua 提供了許多的內建函數,你可以很方便的在程序中調用它們,如print()函數可以將傳入的參數打印在控制臺上。 Lua 函數主要有兩種用途: - 1.完成指定的任務,這種情況下函數作為調用語句使用; - 2.計算并返回值,這種情況下函數作為賦值語句的表達式使用。 ### 函數定義 Lua 編程語言函數定義格式如下: ~~~ ~~~ optional_function_scope?function?function_name(?argument1,?argument2,?argument3...,?argumentn) ????function_body ????return?result_params_comma_separated end ~~~ ~~~ 解析: - **optional_function_scope** **local** - **function_name:** - **argument1, argument2, argument3..., argumentn:** - **function_body:** - **result_params_comma_separated:** ### 實例 以下實例定義了函數 **max()**,參數為 num1, num2,用于比較兩值的大小,并返回最大值: ~~~ ~~~ --[[?函數返回兩個值的最大值?--]] function?max(num1,?num2) ???if?(num1?>?num2)?then ??????result?=?num1; ???else ??????result?=?num2; ???end ???return?result;? end --?調用函數 print("兩值比較最大值為?",max(10,4)) print("兩值比較最大值為?",max(5,6)) ~~~ ~~~ 以上代碼執行結果為: ~~~ ~~~ 兩值比較最大值為????10 兩值比較最大值為????6 ~~~ ~~~ Lua 中我們可以將函數作為參數傳遞給函數,如下實例: ~~~ ~~~ myprint?=?function(param) ???print("這是打印函數?-???##",param,"##") end function?add(num1,num2,functionPrint) ???result?=?num1?+?num2 ???--?調用傳遞的函數參數 ???functionPrint(result) end myprint(10) --?myprint?函數作為參數傳遞 add(2,5,myprint) ~~~ ~~~ 以上代碼執行結果為: ~~~ ~~~ 這是打印函數?-???##???10??## 這是打印函數?-???##???7???## ~~~ ~~~ ### 多返回值 Lua函數可以返回多個結果值,比如string.find,其返回匹配串"開始和結束的下標"(如果不存在匹配串返回nil)。 ~~~ ~~~ >?s,?e?=?string.find("w3cschool菜鳥教程:www.w3cschool.cc",?"菜鳥教程")? >?print(s,e) 10??21 ~~~ ~~~ Lua函數中,在return后列出要返回的值得列表即可返回多值,如: ~~~ ~~~ function?maximum?(a) ????local?mi?=?1?????????????--?最大值索引 ????local?m?=?a[mi]??????????--?最大值 ????for?i,val?in?ipairs(a)?do ???????if?val?>?m?then ???????????mi?=?i ???????????m?=?val ???????end ????end ????return?m,?mi end print(maximum({8,10,23,12,5})) ~~~ ~~~ 以上代碼執行結果為: ~~~ ~~~ 23??3 ~~~ ~~~ ### 可變參數 Lua函數可以接受可變數目的參數,和C語言類似在函數參數列表中使用三點(...) 表示函數有可變的參數。 Lua將函數的參數放在一個叫arg的表中,**#arg** 表示傳入參數的個數。 例如,我們計算幾個數的平均值: ~~~ ~~~ function?average(...) ???result?=?0 ???local?arg={...} ???for?i,v?in?ipairs(arg)?do ??????result?=?result?+?v ???end ???print("總共傳入?"?..?#arg?..?"?個數") ???return?result/#arg end print("平均值為",average(10,5,3,4,5,6)) ~~~ ~~~ 以上代碼執行結果為: ~~~ ~~~ 總共傳入?6?個數 平均值為????5.5 ~~~ ~~~
                  <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>

                              哎呀哎呀视频在线观看