`
modabobo
  • 浏览: 508943 次
文章分类
社区版块
存档分类
最新评论

Lua基础(二):表达式及基本语法

 
阅读更多

Lua的表达式 算术运算符(加减乘除)跟关系运算符(大于、等于、。。。)与其他语言没有什么区别;

逻辑运算符与其他语言相比比较奇怪,这里只讲下逻辑运算符(and or not):

and 和 or 的运算结果不是true 或 false;

a and b -- 如果 a 为 false,则返回 a,否则返回 b
a or b -- 如果 a 为 true,则返回 a,否则返回 b

连接运算符

.. --两个点,可以连接2个字符串

print("hello".."world") --helloworld
print(1 .. 2)                --12


表的构造
构造器是创建和初始化表的表达式。表是 Lua 特有的功能强大的东西。

(1)最简单的构造函数是{},用来创建一个空表

tab = {}
(2)也可以直接初始化:

days = {"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"} 

Lua 将"Sunday"初始化 days[1](第一个元素索引为 1),print(days[1]) 输出Sunday
(3)使用key value 方式初始化:

tab={x=4,y=5}
print(tab.x)  --4
print(tab["x"]) --4






分享到:
评论

相关推荐

    EL表达式语言(EL语法、EL隐含对象、EL函数)

    本资源主要介绍EL表达式语言,包含EL语法、EL隐含对象、EL函数等

    深入探究Lua中的解析表达式

    主要介绍了深入探究Lua中的解析表达式,对于其语法部分的说明和示例都超详细,极力推荐此文!需要的朋友可以参考下

    Lua 错误处理

    语法错误通常是由于对程序的组件(如运算符、表达式)使用不当引起的。一个简单的实例如下: -- test.lua 文件 a == 2 以上代码执行结果为: lua: test.lua:2: syntax error near '==' 正如你所看到的,以上出现...

    literal:安全地评估文字Lua表达式

    literal是使用纯Lua编写的用于安全评估Lua文字表达式的库。 它可以评估文字,例如nil , true , false ,十进制和十六进制数字常量,短字符串和长字符串以及其他文字的表。 它可以使用Lua 5.1或Lua 5.2的语法,并...

    Lua中基本的数据类型、表达式与流程控制语句讲解

    主要介绍了Lua中基本的数据类型、表达式与流程控制语句讲解,总结了Lua入门学习中的基础语法知识,需要的朋友可以参考下

    LuaBind 源码 (Lua增强库)

    5 基本使用 为了使用LuaBind, 你必须包含 lua.h 和 LuaBind 的主要头文件: extern "C" { #include "lua.h" } #include 这些头文件提供了注册函数和类的功能. 如果你只是想获得函数或者类的支持,你可以分开 包含 ...

    Programming in Lua.pdf

    第4章 基本语法 第5章 函数 第6章 再论函数 第7章 迭代器与泛型for 第8章 编译 运行 错误信息 第9章 协同程序 第10章 完整示例 第二篇 tables与objects 第11章 数据结构 第12章 数据文件与持久化 第13章 Metatables ...

    markdown:纯Lua中Markdown文本到HTML标记系统的实现

    最初的Markdown源代码是用Perl编写的,并大量使用了Lua的简单正则表达式引擎中不提供的高级正则表达式技术(例如,负向超前等)。 因此,此Lua端口已从头开始重写。 它可能不是完全没有错误。 如果您发现任何错误,...

    lua-api-pp:用于C ++ 11的Lua API包装器

    该库的目的是让您使用简单的表达语法来操作Lua。 ##当前状态已添加Lua 5.3支持。 ##该库提供的大多数值得注意的功能: 自动堆栈管理; 自然表达式(索引,调用,算术,串联); 全面支持多价值回报; 用户...

    Lua中文教程(pdf版)

    第4章基本语法................18 4.1 赋值语句.18 4.2 局部变量与代码块(block)......19 4.3 控制结构语句...........20 Programming in Lua iv Copyright ® 2005, Translation Team, www.luachina.net ...

    语法高亮显示:Visual Studio Code(VSCode)的语法突出显示扩展。 基于Tree-Sitter

    VSCode的语法突出显示 基于语法荧光笔。 语言: C ++,C,Python,TypeScript,TypeScriptReact,JavaScript, ... 该扩展在后台利用VSCode语义令牌API来覆盖标准TextMate正则表达式匹配提供的语法颜色。

    DSL:Lua 的领域特定语言生成器

    DSL特性解析事件回调(令牌尝试、令牌匹配、规则尝试、规则匹配、规则结束、评论尝试、评论匹配) 用于抛出语法错误的语法规则模式上的错误注释自动生成表达式运算符,例如 *、/、+ 等。 自动空白处理代码 -> AST ->...

    Programming In Lua 中文版PDF高清

    第4章 基本语法 第5章 函数 第6章 再论函数 第7章 迭代器与泛型for 第8章 编译 运行 错误信息 第9章 协同程序 第10章 完整示例 第二篇 tables与objects 第11章 数据结构 第12章 数据文件与持久化 第13章 Metatables ...

    lua 程序设计学习.doc 版

    第4章 基本语法 4.1 赋值语句 4.2 局部变量与代码块(block) 4.3 控制结构语句 4.4 break和return语句 第5章 函数 5.1 多返回值 5.2 可变参数 5.3 命名参数 第6章 再论函数 6.1 闭包 6.2 非全局函数 6.3 正确的尾...

    pico8-simple-outline:[VS代码]对于PICO-8文件(* .p8),使用基本正则表达式在大纲中显示功能

    pico8-简单概述 此插件运行此正则表达式: /^ *function /i ...适当地解析PICO-8 Lua语法会更好,但是如果不这样做,则使用上面描述的简单正则表达式。 在自动测试中加载和解析样本文件也将更好。 构建和发布

    C-Lua5-Cell-Machine:CLua5 c-算法

    符号Lua-变量,函数,函数回调,表,表达式 C算法和容器 单元数据结构和算法 uSockets网络和事件 cJSON和protobuf-c sqlite3 基本结构 细胞阵列 细胞阵列结构和算法 清单和过程 蜂窝列表处理 树与逻辑 蜂窝搜索和...

    oops:带有 Lua 类的简单 OOP

    Lua简单 OOP,具有一流的类(类定义是一个表达式)和舒适的语法。 特征 基于类的继承:类是对象(实例)的工厂。 作为表达式的类(类可以是匿名的和/或在现场定义和使用的)。 受控可见性范围:类不必是全局的

    matlab代码执行所在行-chapi:ChapiisAcommonlanguagemetainformationconvertor,conv

    语法解析 :check_mark_button: :check_mark_button: :check_mark_button: :NEW_button: :check_mark_button: :NEW_button: :NEW_button: :NEW_button: :NEW_button: 函数调用 :check_mark_button: :NEW_button: :NEW...

    interpreterLua:Lua的学校翻译

    输入是用 Lua 编写的代码文件,该程序将检查语法,将其编译为中间代码,然后解释该代码。 程序可以处理最常见的情况,如ifs、循环、变量、表达式、注释、函数,还具有用于排序(合并排序)和子字符串本地化的内部...

    Python assert (断言) 基本用法

    【功能】:用于判断一个表达式,在表达式条件为 false 的时候触发异常。 【用途】:断言可以在条件不满足程序运行的情况下直接返回错误,而不必等待程序运行后出现崩溃的情况,例如代码只能在 Linux 系统下运行,...

Global site tag (gtag.js) - Google Analytics