舉例簡介Lua中函數(shù)的基本用法
更新時(shí)間:2015年07月02日 09:22:52 投稿:goldensun
這篇文章主要介紹了舉例簡介Lua中函數(shù)的基本用法,--兩個(gè)橫線開始單行的注釋,--[[加上兩個(gè)[和]表示多行的注釋--]],需要的朋友可以參考下
復(fù)制代碼 代碼如下:
function fib(n)
if n < 2 then return 1 end
return fib(n - 2) + fib(n - 1)
end
if n < 2 then return 1 end
return fib(n - 2) + fib(n - 1)
end
復(fù)制代碼 代碼如下:
-- 支持閉包及匿名函數(shù):
function adder(x)
-- 調(diào)用adder時(shí),會(huì)創(chuàng)建用于返回的函數(shù),并且能記住變量x的值:
return function (y) return x + y end
end
a1 = adder(9)
a2 = adder(36)
print(a1(16)) --> 25
print(a2(64)) --> 100
function adder(x)
-- 調(diào)用adder時(shí),會(huì)創(chuàng)建用于返回的函數(shù),并且能記住變量x的值:
return function (y) return x + y end
end
a1 = adder(9)
a2 = adder(36)
print(a1(16)) --> 25
print(a2(64)) --> 100
復(fù)制代碼 代碼如下:
-- 返回值、函數(shù)調(diào)用和賦值都可以使用長度不匹配的list。
-- 不匹配的接收方會(huì)被賦為nil;
-- 不匹配的發(fā)送方會(huì)被忽略。
-- 不匹配的接收方會(huì)被賦為nil;
-- 不匹配的發(fā)送方會(huì)被忽略。
x, y, z = 1, 2, 3, 4
-- 現(xiàn)在x = 1, y = 2, z = 3, 而 4 會(huì)被丟棄。
復(fù)制代碼 代碼如下:
function bar(a, b, c)
print(a, b, c)
return 4, 8, 15, 16, 23, 42
end
print(a, b, c)
return 4, 8, 15, 16, 23, 42
end
x, y = bar('zaphod') --> prints "zaphod nil nil"
-- 現(xiàn)在 x = 4, y = 8, 而值15..42被丟棄。
復(fù)制代碼 代碼如下:
-- 函數(shù)是一等公民,可以是局部或者全局的。
-- 下面是等價(jià)的:
function f(x) return x * x end
f = function (x) return x * x end
-- 下面是等價(jià)的:
function f(x) return x * x end
f = function (x) return x * x end
復(fù)制代碼 代碼如下:
-- 這些也是等價(jià)的:
local function g(x) return math.sin(x) end
local g; g = function (x) return math.sin(x) end
-- 'local g'可以支持g自引用。
local function g(x) return math.sin(x) end
local g; g = function (x) return math.sin(x) end
-- 'local g'可以支持g自引用。
復(fù)制代碼 代碼如下:
-- 順便提一下,三角函數(shù)是以弧度為單位的。
復(fù)制代碼 代碼如下:
-- 用一個(gè)字符串參數(shù)調(diào)用函數(shù),不需要括號(hào):
print 'hello' --可以工作。
print 'hello' --可以工作。
舉例講解Lua中的Table數(shù)據(jù)結(jié)構(gòu)
這篇文章主要介紹了舉例講解Lua中的Table數(shù)據(jù)結(jié)構(gòu),說明都融入到了注釋中,需要的朋友可以參考下
2015-07-07 
