当前位置:网站首页>Lua进阶
Lua进阶
2022-07-27 23:01:00 【两片空白】
前言
学会文档查询:官方文档链接——Lua 5.3 参考手册 - 目录
多文件调用
使用require关键字:
- 运行指定的文件名。
- 末尾不带扩展名。
- 目录层级用'.'分隔。

- 只会运行一次。
- 会将调用的返回值返回。

- 调用的文件从package.path路径中查找。

一般require是用来调用外部库文件的,一般不需要多次调用。

迭代器
作用是用来遍历出table中所有的值。
一般table的迭代:

迭代器有两种:
- ipairs
ipairs适用于带数字且连续下标的table。

如果遇到了不连续的数字下标的table,遇到table中没有的数字下标,我们直到返回的nil,此时,ipairs就会停止遍历。

- pairs
适用于字符串下标的和不连续的数字下标。

pairs内部调用的是next函数。
next()函数,会返回传入table值的下一个值,pairs里记录了获取到的值。

用next也可以快速判断一个table是否为空。

string
lua中string的特点
- 字符串的存储结构。
在lua中字符串的存储结构相当于C++中的vector<char>的形式。一个字符一个字符保存在数组中。实际保存的是字符的字节码。

- 可以保存任意字符的字符串,范围是0x00~0xff,包括不可见字符。特殊的是0x00,在c语言中是以'0'字符结尾,后面的字符就丢失了。在lua中不会,因为里面记录了字符的个数,

- 字符串有序号,保存正序号和负序号。
正序号,起始位置1开始,后面依次增加。负序号,末尾-1开始,前面依次减少。

string的接口
返回字符string.byte (s [, i [, j]])s[i],s[i+1], ... ,s[j]的内部数字编码。i的默认值是 1 ;j的默认值是i。

-
string.char (···)
接收零或更多的整数。 返回和参数数量相同长度的字符串。 其中每个字符的内部编码值等于对应的参数值。

-
string.format (formatstring, ···)返回不定数量参数的格式化版本, 格式化串为第一个参数(必须是一个字符串)。和c语言的printf是用没区别。

-
string.lower (s)
接收一个字符串,将其中的大写字符都转为小写后返回其副本。 其它的字符串不会更改。 对大写字符的定义取决于当前的区域设置。

-
string.pack (fmt, v1, v2, ···)返回一个打包了(即以二进制形式序列化)
v1,v2等值的二进制字符串。 字符串fmt为打包格式(参见 §6.4.2)。

边栏推荐
- URDF 集成 Gazebo
- Thesis appreciation [iclr18] a neural language model combining syntax and vocabulary learning
- Analysis and recurrence of network security vulnerabilities
- Use of postman
- 【游戏】任天堂Nintendo Switch超详细购买/使用指南以及注意事项(根据自己使用持续更新中...)
- Operator depth anatomy
- The cooperation between starfish OS and metabell is just the beginning
- Unknown database ‘xxxxx‘
- Brief analysis of advantages, disadvantages and development of SAP modules
- Scrollview, tableview nested solutions
猜你喜欢

【游戏】任天堂Nintendo Switch超详细购买/使用指南以及注意事项(根据自己使用持续更新中...)

How to clearly understand and express IAAs, PAAS and SaaS?

从功能测试到自动化测试,月薪突破30K+,我的6年测开经验。

Sign up now | cloud native technology exchange meetup Guangzhou station has been opened, and I will meet you on August 6!

测试人员需要了解的软件流程

ABAP CDS Table Function介绍与示例

Starfish Os打造的元宇宙生态,跟MetaBell的合作只是开始

mysql查询条件字段值末尾有空格也能查到数据问题

Go language variable

浏览器视频帧操作方法 requestVideoFrameCallback() 简介
随机推荐
重新定义分析 - EventBridge 实时事件分析平台发布
Iperf installation and use
2022/07/27 学习笔记 (day17) 代码块和内部类
诺基亚宣布与博通合作开发5G芯片
Oracle error: ora-01722 invalid number
Basic use of calculation attributes
Jingfang Technology: ASML, a lithography machine manufacturer, is one of the main customers of Anterion company, which participated in the merger and acquisition of the company
Swoole websocket service
逻辑回归原理
Safety detection risk
Recommendation system model: wide & deep model
C语言main函数传递参数
推荐系统-离线召回:u2tag2i、icf
安全检测风险
C language programming | single dog topic explanation
共创文旅新篇章|新起典与国华文旅签订战略合作协议
C language programming | explanation and Simulation of offsetof macro
Monitor mouse sideslip (adapt to mobile terminal)
Node red interacts with tdengine
Deepening the concept of linear algebra [23] 01 - points coordinate points and vectors vectors