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当做函数处 ...
随机推荐
- SPI总线介绍
1. 简介 SPI, Serial Peripheral Interface, 串行外设接口, 是一种高速的.全双工.同步的通信总线SPI在芯片的管脚上只占用四根线 SPI接口主要用于MCU与各种外围 ...
- 非常好!!!Linux源代码阅读——中断【转】
Linux源代码阅读——中断 转自:http://home.ustc.edu.cn/~boj/courses/linux_kernel/2_int.html 目录 为什么要有中断 中断的作用 中断的处 ...
- (七)ubuntu下编译openwrt内核的环境配置
首先安装基本开发环境: sudo apt-get install ssh vim samba tftp nfs 安装编译openwrt须要的包: 解压openwrt包编译出错: Build depen ...
- java基础练习 15
import java.util.Scanner; public class Fiftheen { /*有n个人围成一圈,顺序排号.从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下 ...
- 关于 Delphi 中流的使用(1) 用 TMemoryStream(内存流) 入门 &&& 关于指针的迷惑,我自己问的.
来自:http://www.cnblogs.com/del/archive/2008/01/01/1022124.html -------------------------------------- ...
- Fiddler抓包1-抓firefox上https请求【转载】
本篇转自博客:上海-悠悠 原文地址:http://www.cnblogs.com/yoyoketang/p/6538021.html 前言 fiddler是一个很好的抓包工具,默认是抓http请求的, ...
- poj 1389(离散化+计算几何)
Area of Simple Polygons Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 3412 Accepted ...
- Reporting Services 的一些问题
做报表有一段时间,感觉Reporting Services还是比较麻烦的,因为网上的例子有的比较少,很多地方都需要自己摸索,说说我遇到的一些问题 1:页首的设计 一些固定显示的资料放在页首里面比较方便 ...
- 树链剖分【p2590】[ZJOI2008]树的统计
Description 一棵树上有n个节点,编号分别为1到n,每个节点都有一个权值w. 我们将以下面的形式来要求你对这棵树完成一些操作: I. CHANGE u t : 把结点u的权值改为t II. ...
- shell spool
If you wish to use SQL*Plus Command-line , you'll simply issue the sqlplus command from your shell: ...