【Lua表的定义和访问】关于[]和点操作符的使用

【Lua表的定义和访问】关于\[\]和点操作符的使用

Lua表的定义可以通过下面两种方式

lua 复制代码
a = {x = "abc"}
b = {[y] = "abc"}

在这里,x将代表的是一个自字符串,而y代表的是一个对象,所以如果y = nilb的定义则是错误的,Lua会报错。

同样的,访问Lua的表也有两种方式,

lua 复制代码
a.x
b[y]

上面的.操作符,x是一个字符串,就为"x",而y代表的是一个对象。

总之,被[]括住的代表对象,不被扩住的就代表字符串,需要是一个合法的标识符。

lua 复制代码
> b = {"m" = "abc"}
stdin:1: '}' expected near '='
> b = {1 = "abc"}
stdin:1: '}' expected near '='
> b = {_1 = "abc"}
> b = {["m"] = "abc"}
> b = {[1] = "abc"}
相关推荐
luj_176815 小时前
残熵算法实时化三大瓶颈突破
c语言·开发语言·网络·经验分享·算法
不听话坏16 小时前
Ignition篇(下 一) 动态执行前的事情
开发语言·前端·javascript
likeyi0716 小时前
require 和 import的区别
开发语言·前端
远离UE416 小时前
UE5 compute shader 原子加
开发语言·c++·ue5
C+-C资深大佬16 小时前
C++ 显式类型转换详解:static_cast、dynamic_cast、const_cast、reinterpret_cast
开发语言·c++
KaMeidebaby17 小时前
卡梅德生物技术快报|抗体亲和力成熟工业化调控新机制:差异性浆细胞增殖工艺优化思路
java·开发语言·人工智能·算法·机器学习·架构·spark
luj_176818 小时前
心形曲线轨迹控制三大关键技术
c语言·开发语言·c++·经验分享·算法
Mininglamp_271818 小时前
Claude Code 封禁中国开发者之后:本地 AI 编程工具的替代方案实测
开发语言·人工智能·windows·开源软件·ai-native
思麟呀18 小时前
C++17(三)if constexpr+折叠表达式
开发语言·c++
醉城夜风~18 小时前
Java详解经典算法题:接雨水(三种实现方案+原理剖析)
java·开发语言·算法