【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"}
相关推荐
Boilermaker19927 分钟前
【Java EE】Mybatis-Plus
java·开发语言·java-ee
aramae13 分钟前
C++ -- STL -- vector
开发语言·c++·笔记·后端·visual studio
Tony小周13 分钟前
实现一个点击输入框可以弹出的数字软键盘控件 qt 5.12
开发语言·数据库·qt
lixzest33 分钟前
C++ Lambda 表达式详解
服务器·开发语言·c++·算法
沉默媛1 小时前
如何安装python以及jupyter notebook
开发语言·python·jupyter
_Chipen1 小时前
C++基础问题
开发语言·c++
止观止2 小时前
JavaScript对象创建9大核心技术解析
开发语言·javascript·ecmascript
screenCui3 小时前
macOS运行python程序遇libiomp5.dylib库冲突错误解决方案
开发语言·python·macos
linux kernel4 小时前
第七讲:C++中的string类
开发语言·c++
玩代码4 小时前
Java线程池原理概述
java·开发语言·线程池