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吧,码字不易,请多多支持)

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

相关推荐
tankeven4 分钟前
贪心算法(Greedy Algorithm)详解:从理论到C++实践
c++·算法
Hesionberger4 分钟前
LeetCode72.编辑距离(多维动态规划)
java·开发语言·c++·python·算法
郝学胜-神的一滴6 分钟前
从底层看透Linux高性能服务器:epoll自定义封装与超时清理实战
linux·服务器·c++·网络协议·tcp/ip·unix
weixin_3997336219 分钟前
C语言教程
c语言·嵌入式开发·编程教程·谭浩强·c程序设计
菜菜的顾清寒33 分钟前
C++面试题自用-持续更新
开发语言·c++
流年如夢39 分钟前
编译链接流程与底层细节
c语言
Navigator_Z39 分钟前
LeetCode //C - 1026. Maximum Difference Between Node and Ancestor
c语言·算法·leetcode
t***54439 分钟前
如何在 Dev-C++ 中使用 Clang 调试
开发语言·c++
c++之路41 分钟前
C++ 重载函数、运算符重载、抽象类(接口)
开发语言·c++
汉克老师1 小时前
GESP2023年6月认证C++三级( 第三部分编程题(1、春游))
c++·数组·计数·gesp三级·gesp3级