Lua 是一种轻量级的编程语言,广泛用于游戏开发、脚本编写和其他应用程序。它具有一套丰富的运算符,用于执行各种数学和逻辑操作。本文将详细介绍 Lua 中的运算符,包括算术运算符、关系运算符、逻辑运算符和其他特殊运算符。
算术运算符用于执行基本的数学运算,如加法、减法、乘法和除法。Lua 支持以下算术运算符:
+(加法):用于两个数相加。-(减法):用于两个数相减。*(乘法):用于两个数相乘。/(除法):用于两个数相除。%(取模):用于计算两个数相除后的余数。^(幂):用于计算一个数的指数。例如,2 + 3 的结果是 5,5 - 2 的结果是 3。
关系运算符用于比较两个值,并返回一个布尔结果(true 或 false)。Lua 支持以下关系运算符:
==(等于):用于检查两个值是否相等。~=(不等于):用于检查两个值是否不相等。<(小于):用于检查左边的值是否小于右边的值。>(大于):用于检查左边的值是否大于右边的值。<=(小于等于):用于检查左边的值是否小于或等于右边的值。>=(大于等于):用于检查左边的值是否大于或等于右边的值。例如,2 == 3 的结果是 false,5 > 2 的结果是 true。
逻辑运算符用于组合两个或多个条件,并返回一个布尔结果。Lua 支持以下逻辑运算符:
and:如果两个条件都为 true,则结果为 true。or:如果至少有一个条件为 true,则结果为 true。not:用于反转一个条件的布尔值。例如,true and false 的结果是 false,true or false 的结果是 true。
Lua 还有一些特殊运算符,用于执行特定操作:
..(连接):用于连接两个字符串。#(长度):用于获取字符串或表的长度。例如,"Hello" .. "World" 的结果是 "HelloWorld",#"Hello" 的结果是 5。
在 Lua 中,运算符的优先级决定了它们在表达式中的计算顺序。以下是从高到低的运算符优先级列表:
^not-(一元减)*/%+-..<><=>===~=