Lua学习----Lua的表达式

前言

  Lua的运算符和其他语言基本类似。但也有一点点区别

1.算术运算符

  Lua的算术运算符加入了指数运算符^

    print(2 ^ 10) -->打印 1024。 求2的10次方

2.关系运算符

  Lua的不等运算符符号为~=,并不是!=

  Lua在做“==”等于判断时,Lua是做引用比较的,也就是说,只要两个变量引用同一个对象(这里只对对象起作用,其他的如字符串,数字都是普通变量)时,才认为他们相等。

local	a={ x	= 1, y	= 0}
local	b={ x	= 1, y	= 0}
if a == b then
  print("a==b")
else
  print("a~=b")
end
---output:
a~=b

local m = ‘qqq‘local n = ‘qqq‘
if m == n then
  print("m==n")
else
  print("m~=n")
end
---output:
m==n

3.逻辑运算符

  这里只要记住所有的逻辑操作符将false和nil当做假,其余的都当做真。

4.字符串连接

在Lua中连接两个字符串,可以使用操作符“..”(两个点)。如果其任意一个操作数是数字的话,Lua 会将这个数字转换成字符串。注意,连接操作符只会创建一个新字符串,而不会改变原操作数。也可以使用 string 库函数 string.format 连接字符串

print("Hello " .. "World")				-->打印	Hello	World
print(0	.. 1)								-->打印	01
str1 = string.format("%s-%s","hello","world")
print(str1)								-->打印	hello-world
str2 = string.format("%d-%s-%.2f",123,"world",1.21)
print(str2)								-->打印	123-world-1.21

  

时间: 2025-01-05 13:57:03

Lua学习----Lua的表达式的相关文章

Lua学习笔记之表达式

1.  算数运算符 二元运算符:+-*/^(加减乘除幂) 一元运算符:-(负值) 这些运算符的操作都是实数. 2.  关系运算符 <.>.<=.>=.==~= 这些操作符返回结果为false或者true:==和~=比较两个值,如果两个值类型不同,lua认为两者不同:nil只和自己相等.Lua通过引用比较tables.userdata.funcations.也就是说当且仅当两者表示同一个对象相等. Lua比较数字按传统的数字进行比较,比较字符串按字母的顺序进行,但是字母顺序依赖本地环

Lua学习----Lua基础数据类型

前言 Lua有6中数据类型,分别是nil(空).boolean(布尔).number(数字).string(字符).table(表).function(函数) 在Lua中可以使用type函数来返回一个值或者变量所属的类型,如: print(type("helle world")) -->output:string print(type(print)) -->output:function print(type(true)) -->output:boolean 1.ni

Lua学习(2)——表达式

1. lua算术操作符lua支持的算数操作符: + - * /除 ^指数 %取模 -符号 2. lua关系操作符 <小于 >大于 <= >= == ~=不等于 3. 逻辑操作符 and,or,not 所有逻辑操作符将false,nil 视为假,其他视为真. >print(4 and 5) 5 max = (x>y) and x or y 类似于C语言中选择表达式 max = x>y?x:y 4. 字符串连接 ..表达式 > print("Hello

Lua学习笔记(七):迭代器与泛型for

1.迭代器与闭包 迭代器是一种支持指针类型的结构,它可以遍历集合的每一个元素.在Lua中我们常常使用函数来描述迭代器,每次调用该函数就返回集合的下一个元素. 迭代器需要保留上一次成功调用的状态和下一次成功调用的状态,也就是他知道来自于哪里和将要前往哪里.闭包提供的机制可以很容易实现这个任务.记住:闭包是一个内部函数,它可以访问一个或者多个外部函数的外部局部变量.每次闭包的成功调用后这些外部局部变量都保存他们的值(状态).当然如果要创建一个闭包必须要创建其外部局部变量.所以一个典型的闭包的结构包含

Lua学习(4)——函数

在Lua中函数的调用方式和C语言基本相同,如:print("Hello World")和a = add(x, y).唯一的差别是,如果函数只有一个参数,并且该参数的类型为字符串常量或table的构造器,那么圆括号可以省略,如print "Hello World"和f {x = 20, y = 20}.    Lua为面对对象式的调用也提供了一种特殊的语法--冒号操作符.表达式o.foo(o,x)的另一种写法是o:foo(x).冒号操作符使调用o.foo时将o隐含的作

Lua学习笔记一

学习了有一周多了.之前一直不想献丑,但还是记录下这个过程. 第1章  开发软件搭建 1. ubuntu 下lua安装 sudo apt-get install lua5.1 2.win下的环境搭建. 我选择的是Lua For Windows.一键安装.保存为LUA格式即可运行 预计在Linux下 开发工具 用 sublime_text,实际使用notepadqq,个人喜好无所谓. 第1章  语法学习 1.1  语法学习 Lua -i filename 开启调试. dofile (“filenam

Lua学习笔记(二):基本语法

Lua学习指南:http://www.lua.org/manual/ 首先我们要明确的一点是:在Lua中,除了关键字外一切都是变量. Lua关键字 可以查看这个地址:http://www.lua.org/manual/5.1/manual.html#2.1 关于分号 语句的最后可以用分号";"表示结束,也可以不写. 而对于一行有多个语句的情况下,语句之间可以用分号";"隔开,也可以用空白隔开.一般来说,建议总是用分号隔开. 使用注释 单行注释使用“--”即可,以后的

Lua学习笔记(三):表的构造

构造器是创建和初始化表的表达式.表是Lua特有的功能强大的东西.最简单的构造函数是{},用来创建一个空表.可以直接初始化数组: 1 days = {"Sunday", "Monday", "Tuesday", "Wednesday", 2 "Thursday", "Friday", "Saturday"} Lua将“Sunday”初始化days[1](第一个元素索引为

lua学习笔记之基本语法

Lua学习笔记之基本语法 1.  赋值语句 赋值是改变一个变量的值和改变表域的最基本的方法. a = "hello".."world" t.n = t.n+1 lua可以对多个变量同时赋值,变量列表和值列表的各个元素用逗号分开,赋值语句右边的值会一次赋给左边的变量. a,b = 10,2*x    <-->a = 10;b = 2*x 遇到赋值语句lua会先计算右边所有的值然后再执行赋值操纵,所以我们可以这样进行交换变量的值: x,y = y,x