众所周知,C,C++,python等语言都有运算符,那么Lua也不例外,因为它是C写的嘛!

Lua分为主要三类运算符,分别是算术运算符,关系运算符,逻辑运算符,还有特殊运算符。

1、算术运算符有: + (加)   -(减)   *(乘)  /(除)   %(取模)   ^(求幂)   -(符号)

来看一个例子:test6.lua

num1 = 4 ;
num2 = 2 ;
print(num1+num2);
print(num1-num2);
print(num1*num2);
print(num1/num2);
print(num1%num2);
print(num1^num2);
print(-num1);

解释运行:lua test6.lua

结果:

6
2
8
2.0
0
16.0
-4

2、关系运算符有: ==(等于)   ~=(不等于)  >(大于)  <(小于)  >=(大于等于)  <=(小于等于)

当比较结果成立返回true,否则返回false

来看一个例子: test6.lua

num = 1 ;
num1 = 1;
num2 = 2;
num3 = 3;
num4 = 4;
num5 = 5;
num6 = 6;
ret = num1 == num2 ;
print(ret);
ret = num1 ~= num2 ;
print(ret);
ret = num3 > num2 ;
print(ret);
ret = num4 < num3 ;
print(ret);
ret = num5 >= num6 ;
print(ret);
ret = num1 <= num ;
print(ret);

解释运行:lua test6.lua

结果:

false
true
true
false
false
true

3、逻辑运算符有: and(逻辑与)   or(逻辑或)   not(逻辑非)

假设有A和B,如果A and B, 为真返回A,为假返回B

假设有A和B ,如果A or  B , 为真返回A ,为假返回B

假设有A和B ,如果 not A  , 为真返回true ,为假返回false

来看一个例子:test6.lua

num1 = 100 ;
num2 = 200 ;
num3 = 0 ;
ret = num1 and num3 ;
print(ret);
ret = num1 or  num3 ;
print(ret);
ret = not num1 ;
print(ret);
ret = not(num1 and num2);
print(ret);

解释运行:lua test6.lua

结果:

0
100
false
false

4、特殊运算符

.. 表示连接两个字符串     #表示返回字符串或者表的长度(注意,这里的长度不包括'\0')

案例: test6.lua

--定义两个字符串
str1 = "Hello";
str2 = "World";
--连接两个字符串
ret = str1..str2;
print(ret);
--获取连接后的字符串的长度
str_length = #ret ;
print(str_length);

解释运行: lua test6.lua

HelloWorld
10

当然,lua的运算符也是有优先级的,优先级从高到底的顺序为:

^  not   -(负号)  *  /  +  -  ..  <  >  <=  >=   ~=  ==  and or

最新文章

  1. asp.net开发的一些问题
  2. Ip地址查询
  3. POJ 3264 Balanced Lineup(RMQ)
  4. Hadoop错误
  5. css3之3D翻牌效果
  6. iOS隐藏tabBar的方法
  7. lwp 模拟行锁堵塞 前端超时
  8. 数据结构(Java描述)之二叉树
  9. 【PHP】文件写入和读取详解
  10. 再起航,我的学习笔记之JavaScript设计模式05(简单工程模式)
  11. Java之split()方法
  12. 双系统中卸载Ubuntu后又efi系统分区删除方法
  13. 一张图看懂JavaScript中数组的迭代方法:forEach、map、filter、reduce、every、some
  14. CM记录-JVM调优
  15. MyBatis返回Map键值对数据
  16. google chrome浏览器 程序无法启动并行配置不正确
  17. devel包
  18. Servlet自动加载
  19. 12-7 NSDictionary
  20. hdu1251统计难题(trie)

热门文章

  1. for迭代序列的三种方式
  2. day4-递归
  3. Rest_framework-2
  4. CodeForces - 920F SUM and REPLACE (线段树)
  5. jquery扩展鼠标mousewheel事件
  6. Hadoop:相关概念
  7. Hungry Rabbit
  8. js 的编译
  9. spring核心技术IOC,DI
  10. How to create and manage configuration backups in Internet Information Services 7.0