是非(布尔boolean)
boolean 类型只有两个可选值:true(真) 和 false(假),Lua 把 false 和 nil 看作是 false,其他的都为 true,数字 0 也是 true:
实例:
输出("类型型真为",类型(真))
输出("类型假为",类型(假))
输出("类型虚为",类型(虚))
如果 假 或 虚 即
输出("至少有一个是 '真'")
否则
输出("'假' 和 '虚' 都为 '假'")
结束
如果 0 即
输出("数字 0 是 '真'")
否则
输出("数字 0 为 '假'")
结束
数字(number)
Lua 默认只有一种 number 类型 -- double(双精度)类型(默认类型可以修改 luaconf.h 里的定义),
以下几种写法都被看作是 number 类型:
输出("类型(2)为",类型(2))
输出("类型(2.2)为",类型(2.2))
输出("类型(0.2)为",类型(0.2))
输出("类型(2e+1)为",类型(2e+1))
输出("类型(0.2e-1)为",类型(0.2e-1))
输出("类型(7.8263692594256e-06)为",类型(7.8263692594256e-06))
字符串(string)
字符串由一对双引号或单引号来表示。
字符串1 = "这是字符串1"
字符串2 = '这是字符串2'
输出(字符串1,字符串2)
也可以用 2 个方括号 "[[]]" 来表示"一块"字符串。
html = [[
<html>
<head></head>
<body>
<a href="">中文编程Lua教程</a>
</body>
</html>]]
输出(html)
在对一个数字字符串上进行算术操作时,
print("2" + 6) -->8.0
print("2" + "6") -->8.0
print("-2e2" * "6") -->-1200.0
旧版的Lua会尝试将这个数字字符串转成一个数字,
输出(2+6) -->8
输出("2 + 6") -->2 + 6
--新版的不行了.要么是数字,可运算,要么是文字,可以使用..连接字符串.
输出("a" .. 'b')
输出(157 .. 428)
以下代码中"error" + 1执行报错了,字符串连接使用的是 .. ,如上的"a" .. 'b', 157 .. 428例子.
assert(("error" + 1),"出错") -->出错