Lua学习-1 基础数据类型

文章目录

基础数据类型分类

nil

表示无效值

boolean

只有 true 和 false

number

数值类型可以保存实数,包括整数和浮点数,整数可以是十进制和十六进制,由一串数字序列组成。如果是0x开始,则表示是一个十六进制数。

string

使用单引号或者双引号包含的值即为string

function

函数

userData

用户自定义的 数据结构

thread

线程,

table

表,可以是数组 也可以是对象

如何判断类型(type)

通过使用type()方法进行判断,该方法会返回字符串的类型,然后可以通过==号判断类型。例如:

lua 复制代码
> type(nil) =='nil'
true
> type(nil) == nil
false
> type("测试") == "string"
 true

不同类型数据常见操作

nil

  1. 表示的是一个无效值,同时我们可以通过该属性将table和全局变量进行删除
  2. nil表示假值 ,lua中仅有两个假值 分别为:false 和 nil

number

lua 复制代码
print(type(2))
print(type(2.2))
print(type(0.2))
print(type(2e+1))
print(type(0.2e-1))
print(type(7.8263692594256e-06))

string(字符串)

  1. 双引号和单引号都表示字符串类型(部分语言单引号表示char类型)
  2. 用引号包裹的字符串会被转义。例如:
lua 复制代码
> a = "1\n2"
> print(a)
--输出结果
1
2
  1. 如果字符串内容不想被转义则推荐使用块字符串[[内容]],例如:
lua 复制代码
> a = [["这是测试块字符串"]]
> print(a)
--输出结果
"这是测试块字符串"
  1. 如果 块字符串中包含最外层包含\[\]则需要对块字符串做额外处理,即在[[中拼接=,例如:
lua 复制代码
> a = [=[[]]=]
> print(a)
--输出结果
[]

function

普通函数

lua 复制代码
function func1()
    a = 456;
    print("a:",a)
end
func1(a)

匿名函数

lua 复制代码
function func1(a,fun)
    a = 456;
    print(a);
    fun("567");
end
func1(a,
function (b)
    print(b);
end
)

不定参数函数

lua 复制代码
function func1(...)
    local arg = {...}
    print(arg[1])
    print(arg[2])
    print(arg[3])
end
func1(1,2,3)

table

相关推荐
kkkkkkkkkk_Z6 分钟前
新手自学嵌入式 | 学习日记:Linux驱动复习之系统移植(U-Boot篇)
linux·运维·学习
Rabitebla10 分钟前
【系统性学习笔记】Linux 权限篇(二):文件属性、权限修改与目录权限的底层逻辑
linux·c++·笔记·学习·算法
fanged2 小时前
嵌入式架构学习6--ZSWatch(TODO)
学习
叼烟扛炮2 小时前
Linux 学习笔记(十三):高效排错利器——GDB 调试器入门
linux·笔记·学习
AI职业加油站3 小时前
模数共振行动解读|大模型应用工程师证书,匹配行业 RAG/Agent 落地人才需求
人工智能·学习·算法·职场和发展·职场发展
SZleoWang3 小时前
费曼学习法的4个步骤:选概念、教别人、找缺口、再简化
学习
lengxuenong4 小时前
树状数组 · 信息学学习手册2-离散化与逆序对
c++·学习·算法
一条泥憨鱼4 小时前
【Redis | 黑马点评】基于Redis的消息队列 | stream消息队列 源码解读
java·数据库·redis·缓存·lua
minglie15 小时前
订阅莫名变少的奇怪现象
学习
zhangrelay5 小时前
手机长周期测评十周年终结版本-2026
笔记·学习·智能手机