博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Lua Table 操作
阅读量:5009 次
发布时间:2019-06-12

本文共 1323 字,大约阅读时间需要 4 分钟。

Lua中table类似与C#种的字典,其实就是一个key-value键值对数据结构.来学习下table基本操作

Table的创建

myTable = {}                                        --表名后面使用{}赋值,表示一个空的表myTable = {name="盘子脸",age=18,isMan=true}          --创建时候就添加键-值myTable = {
10,20,30,"plateface"} --创建数字下标值的table,默认是从1开始

Table的赋值

myTable[3] = 34                   --当键是一个数字的时候的赋值方式myTable["name"] = "盘子脸"         --当键是一个字符串的赋值方式
myTable.name = "plateface"        --跟myTable["name"]访问的是同一个value, print(myTable.name) 输出plateface

Table的访问

myTable[3]          --当键是数字的时候,只有一种访问方式myTable.name        --当键是字符串的时候有两种访问方式myTable["name"]

Table的遍历

myTable = {
10,20,30,40}for index=1,table.getn(myTable) do print(myTable[index])end for index,value in ipairs(myTable) do print(index,value)end

表相关的函数:

table.conccat 把表中所有数据连成一个字符串
table.insert 在表中2的位置插入一个
table.remove 移除指定位置的数据
table.sort 排序

通过表来实现面向对象(一)

Enemy = {}local this = Enemy    --定义属性Enemy.hp = 100Enemy.speed = 12.3--定义方法Enemy.Move = function()    print("敌人在移动")endfunction Enemy.Attack()    print(this.hp," 敌人的HP")    this.Move()end--调用攻击方法Enemy.Attack()

通过表来实现面向对象(二)

Apple = {}--使用:给table添加方法function Apple:new()    Apple.str = "苹果的价格是6元"    return Apple;endfunction Apple:toString()    print(Apple.str)endlocal a = Apple:new()print(a.toString())

转载于:https://www.cnblogs.com/plateFace/p/4762218.html

你可能感兴趣的文章
[转]申瓯 JSY2000-06 程控电话交换机呼叫转移设置
查看>>
Javascript----input事件实现动态监听textarea内容变化
查看>>
【语言处理与Python】1.1文本和单词
查看>>
字符串尾号数字自增长
查看>>
ASP.NET Core中使用xUnit进行单元测试
查看>>
在桌面添加快捷方式
查看>>
字符串反转
查看>>
DirectX9 里HLSL的语义Semantics
查看>>
linux shell 发送email 附件
查看>>
人群密度估计 CrowdCount
查看>>
京东为什么不会死
查看>>
JSON.parse()和JSON.stringify()
查看>>
清北学堂 day6 兔子
查看>>
Enabling button in SubGrid on selection of record (SelectionCountRule) in CRM 2011(abstract)
查看>>
.net 常用正则表达式
查看>>
JAVA动态代理机制解析
查看>>
浏览器样式(css)兼容
查看>>
Java泛型中的标记符含义:
查看>>
初遇GitHub
查看>>
[C# 网络编程系列]专题八:P2P编程
查看>>