Lua现学现卖

一、Lua的变量类型

        全局变量:MyVar

        局部变量:local MyVar

二、Lua的数据类型

        1.nil:一个空值 类似C++的nullptr

        2.Boolean:true/false 类似C++的bool

        3.string:字符串 类似C++的std::string

        4.Number:数字 类似C++的double 在Lua中值都是双精度没有int

        5.table:一个表存放数据,可以是不同类型的数据

三、运算符

        1.+ - * /

        2.== :等于   ~= :不等于  < 小于  >大于  <=小于等于  >=大于等于

        3. and并且  or 或者

四、控制结构 

(while)
index = 1
while index < 10 doprint(index)index = index + 1
end(repeat)
index = 1
repeatprint(index)index = index + 1
until index > 10(if)
a = 5
b = 10
if (a < b) thenprintf("a < b")
end(for)
--这个for循环默认的增加量是1
for index = 1 , 10 doprintf(index)
end--这个for循环每次的增加量是2 开始时是1第二次是1+2第三次是1+2+2
for index = 1 , 10 , 2 doprint(index)
end(break)
for index = 1, 100 doif index == 52 thenprint("index == 52")breakend
end

五、函数

function FunctionName(par1,par2,...)print("函数体")
end
在Lua的函数中可以没有参数使用...替代
function FunctionName(...)--可以通过arg.n来获得变量的个数 这个arg是一个table表用来存储所有的变量 Lua自己生成的表不用手动生成print("")
end

六、字符串

--tonumber将字符串转换成数字
myString = "1234"
myNumber = tonumber(myString)--tostring将数字转换成字符串
myNumber = 1234
myString = tostring(myNumber)--string.len获得字符串的长度
myString = "1234"
print(string.len(myString)) --4--string.sub(myString , start , end)
myString = "Hello World"
newString = string.sub(myString , 1 , 5)
print(newString) -- Hello

 七、表Table

-- 假设
-- 创建一个表添加100个元素
myTable = {}
for index = 1 , 100 domyTable[index] = math.random(1,1000)
end-- table.getn(myTable) 获得表的大小
print(table.getn(myTable))--table.insert(myTable,position,value) 在表中的指定位置插入一个值
table.insert(myTable,20,"Hello World") -- 在表的第25位置处插入字符串"Hello World"--table.ramove(myTable,position) 移除表指定位置的元素
print(table.ramove(myTable,20))-- pairs 可以用于遍历table中的每个元素
方式一、for index , value in pairs(myTable) doprint(index,value)    end
方式二、for index , table.getn(myTable) doprint(index,myTable[index])end

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/pingmian/86771.shtml
繁体地址,请注明出处:http://hk.pswp.cn/pingmian/86771.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

(24)如何在 Qt 里创建 c++ 类,以前已经学习过如何在 Qt 里引入资源图片文件。以及如何为继承于 Qt已有类的自定义类重新实现虚函数

&#xff08;1&#xff09; 如何在Qt里创建 c 类 &#xff1a; 效果图如下 &#xff1a; &#xff08;2&#xff09;开始完善自定义类里面的成员函数 &#xff1a; 接着 &#xff1a; 以及 &#xff1a; 接着重新实现这些继承来的虚函数就可以了。 &#xff08;3&#xff09…

怎样优化HDFS的网络传输

优化HDFS&#xff08;Hadoop Distributed File System&#xff09;的网络传输可以从多个方面入手&#xff0c;以下是一些常见的优化策略&#xff1a; 1. 网络硬件升级 增加带宽&#xff1a;使用更高带宽的网络设备&#xff0c;如10Gbps或更高速度的交换机和网卡。减少延迟&am…

深入探索 Pdfium.Net:在 .NET 中处理和渲染 PDF 文件

在现代软件开发中&#xff0c;PDF 文件的处理变得愈加重要&#xff0c;尤其是在文档管理、报表生成和在线内容展示等领域。为了高效地处理和渲染 PDF 文件&#xff0c;开发者通常会选择一些强大的 PDF 处理库。而 Pdfium.Net&#xff0c;作为 PDFium 库的 .NET 封装&#xff0c…

当无人机遇到AI智能体:多领域自主空中智能和无人机智能体综述

作者&#xff1a;Ranjan Sapkota, Konstantinos I. Roumeliotis, Manoj Karkee 单位&#xff1a;康奈尔大学生物与环境工程系&#xff0c;希腊伯罗奔尼撒大学信息与电信系 论文标题&#xff1a;UAVs Meet Agentic AI: A Multidomain Survey of Autonomous Aerial Intelligenc…

从 0 到 1 玩转 React:打造你的趣味美食相册

想象一下&#xff0c;你想制作一个超酷的 “美食相册” 网页&#xff0c;能展示各种美食图片&#xff0c;还能随时切换查看不同美食。这听起来是不是很有趣&#xff1f;别担心&#xff0c;React 能帮你轻松实现&#xff01;作为前端开发领域最受欢迎的库之一&#xff0c;React …

深入浅出:RocketMQ与Kafka的双剑合璧,实现高可用与高吞吐

本文在创作过程中借助 AI 工具辅助资料整理与内容优化。图片来源网络。 文章目录 引言一、RocketMQ与Kafka的江湖地位1.1 RocketMQ的独门绝技1.2 Kafka的凌厉攻势 二、双剑合璧的策略&#xff1a;双写队列2.1 策略概述2.2 代码实现 三、双剑合璧的实战应用3.1 电商订单处理3.2 …

Apache POI-02.入门案例-通过POI向Excel文件写入文件内容-通过POI读取Excel文件内容

一.入门案例 向excel文件中写入并读出 package com.sky.test;import org.apache.poi.xssf.usermodel.XSSFCell; import org.apache.poi.xssf.usermodel.XSSFRow; import org.apache.poi.xssf.usermodel.XSSFSheet; import org.apache.poi.xssf.usermodel.XSSFWorkbook; impor…

MongoDB06 - MongoDB 地理空间

MongoDB06 - MongoDB 地理空间 文章目录 MongoDB06 - MongoDB 地理空间一&#xff1a;地理空间数据基础1&#xff1a;地理数据表示方式1.1&#xff1a;GeoJSON 格式1.2&#xff1a;传统坐标对 2&#xff1a;地理空间索引2.1&#xff1a;2dsphere 索引2.2&#xff1a;2d索引2.3&…

Bugku——WEB篇(持续更新ing)

目录 一、滑稽 二、计算器 方法一 方法二 三、alert 四、你必须让他停下 五、头等舱 六、GET 七、POST 方法一 方法二 八、source 九、矛盾 十、备份是个好习惯 一、滑稽 1.启动环境后&#xff0c;访问URL&#xff0c;页面出现了一堆滑稽表情 2.按f12(或fnf12)打…

Linux 网络命名空间的奥秘:深入解析struct net与内核模块编译陷阱

引言:网络隔离的基石 在Linux容器化技术(如Docker)和云计算网络中,网络命名空间是实现网络隔离的核心机制。每个隔离的网络环境都由一个关键的内核数据结构描述——struct net。这个结构体不仅是网络隔离的技术基础,也是内核开发者常遇到的编译陷阱源头。 一、解剖网络命…

idea的EasyCode插件连接瀚高数据库(APP)

文章目录 环境症状问题原因解决方案 环境 系统平台&#xff1a;Linux x86-64 Red Hat Enterprise Linux 7 版本&#xff1a;5.6.5 症状 客户在idea工具中使用EasyCode插件连接瀚高数据库的企业版时&#xff0c;连接设置的url中提示“jdbc:highgo不存在”的错误 问题原因 E…

VMware设置虚拟机为固定IP

1. 修改虚拟网络编辑器 打开虚拟机网络“编辑” 点击“VMnet8” 选择“NAT”模式 修改网关&#xff1a;前面的不要修改&#xff0c;最后一位设置为“1”&#xff0c;然后确定 记住这里的网关&#xff0c;后面的配置要保持一致 设置子网IP和子网掩码&#xff1a;一般就…

智核引擎融合生成式AI,重塑企业知识图谱与研发创新范式!

目录 系统架构设计核心实现步骤步骤1&#xff1a;知识图谱构建与数据预处理步骤2&#xff1a;生成式AI与知识图谱融合&#xff08;RAG增强&#xff09;步骤3&#xff1a;智能推理工作流 核心流程可视化企业级部署方案性能优化策略应用场景示例结语 本文将手把手实现企业级知识图…

LogisticRegression(solver = ‘lbfgs‘)的ConvergenceWarning问题解决

&#x1f466;&#x1f466;一个帅气的boy&#xff0c;你可以叫我Love And Program &#x1f5b1; ⌨个人主页&#xff1a;Love And Program的个人主页 &#x1f496;&#x1f496;如果对你有帮助的话希望三连&#x1f4a8;&#x1f4a8;支持一下博主 LogisticRegression的Co…

web3 docs

区块链重构信任机制&#xff0c;去中心化&#xff0c;用唯一的hash编号来实现防篡改。以数字货币的形式交易&#xff0c;个人持有唯一的数字秘钥(唯一&#xff0c;不可篡改) 详见 以太坊的白皮书 和 数字货币 (加密货币实现隐私交易) 底层基础的很多特点 1.例如p2p&#xf…

AI入门 | 计算自注意力时QK^T的计算复杂度是多少?

0. 背景 假设我们有两个矩阵&#xff1a; 矩阵 A&#xff0c;尺寸为 (n, d_k)矩阵 B&#xff0c;尺寸为 (d_k, n) 我们要计算它们的乘积 C A * B。 那么这个过程所需的计算量是多少&#xff1f; 1. 结果矩阵的尺寸 首先&#xff0c;结果矩阵 C 的尺寸是由第一个矩阵的行数…

NeRF-Lidar实景重建:大疆Mavic 4 Pro低成本建模方案(2025实战指南)

摘要 面对传统激光雷达建模​​成本高昂​​&#xff08;单设备超$20万&#xff09;与​​操作复杂​​的行业痛点&#xff0c;本文提出基于消费级无人机大疆Mavic 4 Pro的​​NeRF-LiDAR融合重建方案​​&#xff0c;实现厘米级精度建模成本降低至1/10。核心技术突破在于&…

x64dbg设置条件断点

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、x64是什么?二、条件断点1.CreateWindowExW函数设置当窗口名称为xxx字符串时候break总结前言 提示:这里可以添加本文要记录的大概内容: x64dbg设置条件断点 版本 2024 mar 27 提示:以…

RNN人名分类器案例

RNN人名分类器案例 1 任务目的&#xff1a; 目的: 给定一个人名&#xff0c;来判定这个人名属于哪个国家 典型的文本分类任务: 18分类---多分类任务 2 数据格式 注意&#xff1a;两列数据&#xff0c;第一列是人名&#xff0c;第二列是国家类别&#xff0c;中间用制表符号&q…

鸿蒙HarmonyOS 关于图片、视频的选择详解

背景 在聊天软件中&#xff0c;发送相册中视频和照片、用相机拍摄视频和图片发送是很常用的功能。在Android和iOS端&#xff0c;大部分应用都通过API方式定义UI来实现相册选择照片、视频&#xff0c;相机拍摄照片、视频&#xff0c;它们一般都支持以下功能&#xff1a; 相册选…