lua基础【三】唯一数据结构table表
--[[ 数据结构table对象(一种动态分配的对象)
lua中的表操作。table类型实现了“关联数组的”。 “关联数组是一种具有特殊索引方式的数组”
能够通过下标或者字符串来索引它,table没有固定的大小,table是Lua仅有的数据结构,
既然这么说,就表明table的意义非常重大,也极为重要 我们能够用table表示普通数组,字符表,集合记录,队列。也能够通过table
表示。模块(module),包(package),对象object table的创建是通过uoge构造表达式完毕的,最简单的构造表达式是{} ]]-- --创建一个table
tab={} --循环加入条目
for i=1,10 do
tab[i]=i
end --获取table的长度
print(#tab) for i=1,#tab do print(tab[i])
end --单一加入条目(这两种加入条目的做法都是一样的,我更側重于第一种方式)
tabs={}
tabs.name="hello"
tabs["name"]="world"
print (tabs.name) t={color="red",x=3,3,4} print(#t)--结果是2 print(t.color) --red --[[ 关于lua的函数,function ]]-- --[[
lua中自己定义类型和线程
]]-- --[[ lua表达式 应记住下面关系操作符 < > <= >= == ~= --不等于 逻辑操作符: and or not ]]-- --[[
table构造式。构造式是用于创建和初始化table的表达式,这是lua特有的一种表达式。而且yeshilua
中最实用的,最通用的机制之中的一个 最简单的构造式就是一个空构造式{},用于创建一个空的table。 比如:
]]-- days={"sunday","monday","tuesday","wednesday","Thursday","Firday","staturday"} --会将days[1]初始化为sunday,days[2]初始化为monday
print(days[4]) --lua还提供了一种特殊的语法用于初始化记录风格的table a={x=10,y=20}
--它等价于下面写法
a={}
a.x=10
a.y=20 --lua中删除一个table得条目,仅仅须要将该条目置空就可以 --[[
在构造式中还能够用分号取代逗号。一般会将分号用于切割构造式中不同的成分。
比如:
将列表部分与记录部分明显的分开 ]]-- a15={x=10,y=45; "one","two","three"}
--[[
table相关
]]-- --获取表中的原书个数
str={"halou","nihao","zaima"}
print(table.getn(str)) --向表中插入元素
table.insert(str,4,"women") --从表中删除元素
for k, v in ipairs(str) do table.remove(str,k)
end str[1]="chiba"
for i=1,#str do
print(str[i])
end --lua语言极为相似C语言,我们能够对其biao得内部进行管理,假设表的
--内部被改变,则原表也会发生改变 str2={name="hehe",xuhao="2011",age=24 ; 24,23,25} print(table.getn(str2)) table.insert(str2,2,15) for k,v in ipairs(str2) do
print(v)
end --2号位置插入一个元素后,原来二号位置的元素会向后移动一个位置 --关于二维表,就是须要表示两个以上的字段。
a={name={"zhangsan","lishi","wangwu"},age={24,25,26}}
for k,v in ipairs(a.name) do
print(v)
end
lua基础【三】唯一数据结构table表的更多相关文章
- [lua]紫猫lua教程-命令宝典-L1-01-07. table表
L1[table]01. table表的定义与赋值 小知识:声明表的例子 xx={}--创建一个空表xx --给这表的元素赋值 test="a" xx[test]="a& ...
- Lua 学习之基础篇四<Lua table(表)>
table 是 Lua 的一种数据结构用来帮助我们创建不同的数据类型,如:数组.字典等. Lua table 使用关联型数组,你可以用任意类型的值来作数组的索引,但这个值不能是 nil. Lua ta ...
- 关于 lua table表存储函数且运用
--table 是lua的一种数据结构用来帮助我们创建不同的数据类型.如:数组和字典--lua table 使用关联型数组,你可以用任意类型的值来做数组的索引,但这个值不能是nil--lua tabl ...
- Excel 将A表的基础数据拼接到B表中来-三种方法: ctrl+回车, VLOOKUP()函数,宏
A表 基础信息表 B表 业务信息表 将a表中的基础数据 拼接到B表的后面, 应用场景是: B表很多数据,很繁乱,名字不一定全, A表也是比较多的行,B表乱:比如有8行有李晨的,却只有3行是范仲淹的, ...
- Lua table(表)
table 是 Lua 的一种数据结构用来帮助我们创建不同的数据类型,如:数组.字典等. Lua table 使用关联型数组,你可以用任意类型的值来作数组的索引,但这个值不能是 nil. Lua ta ...
- hrbustoj 1545:基础数据结构——顺序表(2)(数据结构,顺序表的实现及基本操作,入门题)
基础数据结构——顺序表(2) Time Limit: 1000 MS Memory Limit: 10240 K Total Submit: 355(143 users) Total Accep ...
- lua table表
lua table表 语法结构 创建一个 table 直接使用 "{}" 即可 table1 = {} -- 赋值 table1["name"] = " ...
- Lua 基础
Lua 5.3 的中文手册, http://cloudwu.github.io/lua53doc 在线浏览 --第一部分 -- 两个横线开始单行的注释 --[[ 加上两个[和]表示 多行的注释. -- ...
- Lua基础
局部定义与代码块: 使用local声明一个局部变量或局部函数,局部对象只在被声明的那个代码块中有效. 代码块:一个控制结构.一个函数体.一个chunk(一个文件或文本串)(Lua把chunk当做函数处 ...
随机推荐
- altera ip 核小究
用quartus的MegaWizard工具生成一个乘法器multiplier,会在工程目录下产生 multiplier.qip (可选) multiplier_bb.v (可选) multip ...
- Codeforces Round #352 (Div. 2) A
A. Summer Camp time limit per test 1 second memory limit per test 256 megabytes input standard input ...
- Audio Unit 介绍
关于 Audio Unit iOS 提供了音频处理插件,支持混音,声音均衡,格式转化,以及用于录音,回放,离线渲染,实时对话的输入输出.可以动态载入和使用这些强大而灵活的插件,在 iOS 应用中这些插 ...
- java 复习整理(一 java简介和基础语法)
现在公司用的是封装太多东西的平台开发,觉着之前学的东西很多都忘了,所以想好好总结回顾一下.之前总是想学很多编程语言像python.s6.node.react,但现在越来越体会到编程语言只是一个开发的工 ...
- EOJ-大学生程序设计邀请赛(华东师范大学)-E-黑心啤酒厂
E. 黑心啤酒厂 Time limit per test: 1.0 seconds Time limit all tests: 1.0 seconds Memory limit: 256 megaby ...
- Git 新项目关联到远程仓库
最近前端学到小有成果,准备写一个新项目放在githup,结果没有提前在仓库创建项目,现在我把写好的项目推送到远程gitHup 1.先初始化本地仓库 Git init : 这样在项目里面都创建了一个隐藏 ...
- cocos2d Programming Guide
http://python.cocos2d.org/doc/programming_guide/index.html The cocos2d Programming Guide provides in ...
- 使用 Python 开始你的机器学习之旅【转】
转自:https://linux.cn/article-8582-1.html 编译自:https://opensource.com/article/17/5/python-machine-learn ...
- Linux高端内存映射(上)【转】
转自:http://blog.csdn.net/vanbreaker/article/details/7579941 版权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[-] 高端内 ...
- [转]Google 的开源技术protobuf 简介与例子
本文来自CSDN博客:http://blog.csdn.NET/program_think/archive/2009/05/31/4229773.aspx 今天来介绍一下“Protocol Buffe ...