Lua语言是在1993年由巴西一个大学研究小组发明,其设计目标是作为嵌入式程序移植到其他应用程序, 它是由C语言实现的,虽然简单小巧但是功能强大,所以许多应用都选用它作为脚本语言
用法简述
Lua语言提供了如下几种数据类型:booleans(布尔)、numbers(数值)、strings(字符串)、tables(表格),和许多高级语言相比,相对简单。
数据类型及其逻辑处理
字符串
local strings val = "world"
local代表局部变量,没有local是全局变量。
-- 结果是"world"
print(hello)
–代表注释
数组
在Lua中,如果要使用类似数组的功能,可以用tables类型,但和大多数编程语言不同的是,Lua的数组下标从1开始计算:
local tables myArray = {"redis", "jedis", true, 88.0}
-- true
print(myArray[3])
for
关键字for以end作为结束符:
local int sum = 0
for i = 1, 100
do
sum = sum + i
end
-- 输出结果为5050
print(sum)
tables的长度,只需要在变量前加一个#号即可:
for i = 1, #myArray
do
print(myArray[i])
end
Lua还提供了内置函数ipairs,可以遍历出所有的索引下标和值:
for index,value in ipairs(myArray)
do
print(index)
print(value)
end
while
while循环同样以end作为结束符。
local int sum = 0
local int i = 0
while i <= 100
do
sum = sum +i
i = i + 1
end
-- 输出结果为5050
print(sum)
if else
local tables myArray = {"redis", "jedis", true, 88.0}
for i = 1, #myArray
do
if myArray[i] == "jedis"
then
print("true")
break
else
-- do nothing
end
end
哈希
如果要使用类似哈希的功能,同样可以使用tables类型。
local tables user_1 = {age = 28, name = "tome"}
-- user_1 age is 28
print("user_1 age is " .. user_1["age"])
for key,value in pairs(user_1)
do print(key .. value)
end
函数定义
在Lua中,函数以function开头,以end结尾,funcName是函数名,中间部分是函数体:
function funcName()
...
end
function contact(str1, str2)
return str1 .. str2
end
--"hello world"
print(contact("hello ", "world"))
以上内容官来源于《Redis开发与运维》