Lua学习(2)类型与值
注释方法
八种基础类型
nil(空)
......
lua中的字符串是不可改的
修改lua中变量字符串的方法:
a="one string"
b=string .gsub(a,"one","another")
字符串中的特殊字符
\a
\b
\f提供表格
\n换行
\' '
\" "
\r回车
\<ddd>
字符串全部输出方法
[[
]]
.. 用于字符串连接操作
#输出有多少个字符
Table表
实现关联数组,没有固定大小,可以任意添加
既不是值也不是变量,而是对象(动态分配对象)
创建Table
a={} --创建table a
--给a赋1000个值
--for循环
for i=1,1000 --循环开始,lua中从1开始,循环1000次
do a[i]=i*2 --给a的每个元素进行赋值
end --结束
print(a[2]) --输出table a中元素2的值
输出:4
求出最大的值
for 循环中#表示最大的索引
for i=1,#t do
print(t[i])
end
输出
输出table t的最大索引
print(t[#t])
输出:2000
将最大索引的元素的值设为nil
然后输出最大索引元素数
print(t[#t])
t[#t]=nil
print(#t)
输出:999
获取最大索引元素数之后,再次增加一个值,再次输出最大索引元素的值,最大索引的元素数
t[#t+1]=233
print(t[#t])
print(#t)
输出:
233
1000
tonumber()对变量进行强制传变成nubmer
i=10;j="10";k="+10"
a={}
a[i]="one value";
a[j]="another value"
a[k]="yet another value"
print(a[i])
print(a[j])
print(a[k])
print(a[tonumber(k)]) --对k进行强制转换成数字值,那么k=10 k=i 元素k的值就等于元素i的值
print(a[tonumber(j)]) --同上
变量
- 全局变量
a =5
b="string"
c=false
- 局部变量
local a=5
local b="string"
local c=false