Lua基本数据类型

windows平台下,环境搭建:

       LuaForWindows

这个直接点击安装就可以了,都不需配置啥环境变量的。

在里面,提供了开源的编辑器SciTE,在SciTE文件夹下点击SciTE.exe就可以直接打开了。


1.注释:

       单行注释:   --

       多行注释:  --[[     --]]

--定义变量a
a=0;

--[[
定义变量b
--]]
b=0

2.区分大小写:

a=0

A=1

print(a,A)

输出为: 0       1


.基本数据类型:

       有8个基本类型:nil ,boolean ,number ,string ,userdata ,function ,thread ,table.

       1.nil:

变量未赋值之前默认它的类型和值都为nil。

当将变量的值赋为nil,删除该变量。

print(type(a))
print(a)
输出:nil  

nil


       2.boolean:

有两个值:true和false。在条件逻辑判断中,false和nil为假,其他值都为真。

if nil then
print("nil is true")
end
if false then
print("false is true")
end
if true then
print("true is true")
end
if 0 then
print("0 is true")
end
if "" then
print(" “” is true")
end
在逻辑判断中,0和" "也是真。

     

        3.number:

表示实数,如果数值不是特别大的话,就不用担心精度的问题。

a=1
b=0.01
a=a+b
print(a)
这样,都省了类型转换了,挺方便的。


         4.string:

字符序列。字符窜不能修改,修改字符串需要创建一个新的变量来存储。

.. :字符串连接符。

a="窗外"
b="月明"
c=a..b
print(c)

数字好字符串之间互相转换:

a="0"
a=tonumber(a)
print(type(a))
a=tostring(a)
print(type(a))

当然,我们隐式的转换的话会发现:

-- 能隐式的将string转为number
a="0"
a=a+0
print(type(a))

--[[   不能隐式的将number转为string
b=0
b=b+""
print(type(b))
--]]

      5.function:

函数,作为一类值,可以存储在变量中,可以作为函数参数也可以作为返回值存在。

function add (a ,b)
return a+b
end
function pr()
return add(1,2)
end
print(add(1,2))
print(add(add(1,2),3))
print(pr())

     6.table:

关系表,在使用上跟数组有点相似。可以用任意类型来作为索引和数据的存储类型。

-- 建立空表
ta={}
ta[-1]=2
ta["one"]="one"
-- 索引是字符串,可以直接通过 .访问
ta.one="one re"
print(ta[-1])
print(ta["one"])

-- 建表的时候,就初始化数据
tt={
	10,
--[[
用字符串作为索引,可以使用下面的两种方式
--]]
	["one"]="one",
	two="two"
}
-- 默认下标从0开始的
print(tt[1])
print(tt.one)
print(tt.two)



你可能感兴趣的:(lua)