Lua 数据类型 - nil

一、作用

  1. 表示没有任何值
  2. 删除一个全局变量
  3. 删除 table 中的值
lua 复制代码
--- name 没有声明过,所以会为 nil,表示当前什么都没有
print(name)     --> nil
lua 复制代码
local name = "江澎涌"
print(name)             --> 江澎涌

--- 将 name 置为 nil 进行删除
name = nil
print(name)             --> nil
lua 复制代码
--- 创建一个表
---   key    |      value
--- "name"   |  "jiangpengyong"
local table = { name = "jiangpengyong" }
print(table["name"])    --> jiangpengyong
table["name"] = nil
print(table["name"])    --> nil

二、获取 nil 类型

因为 type 的返回值都是字符串,所以在 nil 进行比较时,记得加上 "

lua 复制代码
--- 类型
print(type(X))      --> nil

--- 因为这里的 type(X) 是 string 类型,所以不等 nil
print(type(X)==nil)     --> false

--- 需要使用 "nil" 进行比较
print(type(X)=="nil")   --> true

--- 也可以这样使用
print(X == nill)        --> true

三、写在最后

Lua 项目地址:Github传送门 (如果对你有所帮助或喜欢的话,赏个star吧,码字不易,请多多支持)

公众号搜索 "江澎涌" 可以第一时间获取到后续文章

相关推荐
jyyyx的算法博客7 分钟前
【再探图论】深入理解图论经典算法
c++·算法·图论
念_ovo15 分钟前
【算法/c++】利用中序遍历和后序遍历建二叉树
数据结构·c++·算法
Vitalia22 分钟前
⭐算法OJ⭐寻找最短超串【动态规划 + 状态压缩】(C++ 实现)Find the Shortest Superstring
开发语言·c++·算法·动态规划·动态压缩
C-DHEnry1 小时前
迪杰斯特拉+二分+优先队列+拓扑+堆优化(奶牛航线Cowroute、架设电话线dd、路障Roadblocks、奶牛交通Traffic)
c++·算法·动态规划·二分·拓扑·堆优化·迪杰斯特拉
这个懒人1 小时前
H.264编码解析与C++实现详解
c++·ffmpeg·h264
努力学习的小廉2 小时前
【C++11(中)】—— 我与C++的不解之缘(三十一)
android·java·c++
望舒_2332 小时前
【C++11】异步编程
开发语言·c++
一个程序员(●—●)2 小时前
Lua函数与表+Lua子文件加载与元表
开发语言·lua
zyx没烦恼2 小时前
Linux 进程信号
linux·运维·服务器·开发语言·c++
努力学习的小廉2 小时前
【C++11(上)】—— 我与C++的不解之缘(三十)
java·开发语言·c++