【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"}
相关推荐
波波00711 分钟前
写出稳定C#系统的关键:不可变性思想解析
开发语言·c#·wpf
dr_yingli33 分钟前
fMRI(3-1)报告(个体化报告)生成器说明
开发语言·matlab
hrhcode33 分钟前
【java工程师快速上手go】一.Go语言基础
java·开发语言·golang
飞Link1 小时前
【AI大模型实战】万字长文肝透大语言模型(LLM):从底层原理解析到企业级Python项目落地
开发语言·人工智能·python·语言模型·自然语言处理
妙蛙种子3111 小时前
【Java设计模式 | 创建者模式】 原型模式
java·开发语言·后端·设计模式·原型模式
LlNingyu1 小时前
Go 实现无锁环形队列:面向多生产者多消费者的高性能 MPMC 设计
开发语言·golang·队列·mpmc·数据通道
Lyyaoo.1 小时前
【JAVA基础面经】线程的状态
java·开发语言
John.Lewis1 小时前
C++进阶(8)智能指针
开发语言·c++·笔记
CoderCodingNo1 小时前
【GESP】C++二级真题 luogu-B4497, [GESP202603 二级] 数数
开发语言·c++·算法
ss2731 小时前
致Java初学者的一封信
java·开发语言