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 = 100
Enemy.speed = 12.3 --定义方法
Enemy.Move = function()
print("敌人在移动")
end function Enemy.Attack()
print(this.hp," 敌人的HP")
this.Move()
end --调用攻击方法
Enemy.Attack()

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

Apple = {}

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

最新文章

  1. .net 过滤特殊字符
  2. Dialog , ProgressDialog , PopWindow 区别
  3. Iphone H5上传照片被旋转
  4. Selenium2学习-002-Selenium2 Web 元素定位及 XPath 编写演示示例
  5. 49个jquery代码经典片段
  6. MonkeyRunner学习(2)常用命令
  7. CSS隐藏元素的几种妙法
  8. android线程池
  9. 转载:C#中事件和委托的编译代码
  10. 'customerService' for bean class [com.cd.service.business.customer.impl.CustomerService]
  11. salt自动化部署
  12. kickstart自动化安装--tftp+nfs+dhcp
  13. memcached常用命令
  14. xpath解析html
  15. Python_tkinter(5)_GUI工具
  16. python语言学习--2
  17. Oracle定时备份数据库
  18. mysql碰到unknown variable 'xxxx' 的解决方法
  19. stm32 boot0 boot1的启动方式
  20. apache 配置会话保持

热门文章

  1. (转)iOS Wow体验 - 第五章 - 利用iOS技术特性打造最佳体验
  2. [Redux] Extracting Container Components -- Complete
  3. 网络测试工具netperf
  4. Notification (通知)的 新版和旧版用法
  5. indexOf()忽略大小写方法
  6. roleManager 元素(ASP.NET 设置架构),我是因为SSL弱密码(转)
  7. Temporary ASP.NET Files 文件夹中保存的是什么内容?[转]
  8. Geodatabase - 判断是否处于编辑状态
  9. mysqlbinlog恢复数据
  10. DTO学习系列之AutoMapper(四)