Lua - operatorzy
Operator to symbol, który mówi tłumaczowi, aby wykonał określone operacje matematyczne lub logiczne. Język Lua jest bogaty we wbudowane operatory i zapewnia następujący typ operatorów -
- Operatory arytmetyczne
- Operatorzy relacyjni
- Operatory logiczne
- Różne operatory
Ten samouczek wyjaśni po kolei operatory arytmetyczne, relacyjne, logiczne i inne różne.
Operatory arytmetyczne
Poniższa tabela przedstawia wszystkie operatory arytmetyczne obsługiwane przez język Lua. Przyjmij zmiennąA posiada 10 i zmienną B mieści wtedy 20 -
Pokaż przykłady
Operator | Opis | Przykład |
---|---|---|
+ | Dodaje dwa operandy | A + B da 30 |
- | Odejmuje drugi operand od pierwszego | A - B da -10 |
* | Pomnóż oba operandy | A * B da 200 |
/ | Podziel licznik przez de-licznik | B / A da 2 |
% | Operator modułu i reszta po dzieleniu całkowitoliczbowym | B% A da 0 |
^ | Operator wykładnika potęguje | A ^ 2 da 100 |
- | Jednoargumentowy - operator działa jako negacja | -A da -10 |
Operatorzy relacyjni
Poniższa tabela przedstawia wszystkie operatory relacyjne obsługiwane przez język Lua. Przyjmij zmiennąA posiada 10 i zmienną B mieści wtedy 20 -
Pokaż przykłady
Operator | Opis | Przykład |
---|---|---|
== | Sprawdza, czy wartości dwóch operandów są równe, czy nie, jeśli tak, warunek staje się prawdziwy. | (A == B) nie jest prawdą. |
~ = | Sprawdza, czy wartości dwóch operandów są równe, czy nie, jeśli wartości nie są równe, warunek staje się prawdziwy. | (A ~ = B) jest prawdą. |
> | Sprawdza, czy wartość lewego operandu jest większa niż wartość prawego operandu. Jeśli tak, warunek staje się prawdziwy. | (A> B) nie jest prawdą. |
< | Sprawdza, czy wartość lewego operandu jest mniejsza niż wartość prawego operandu, jeśli tak, warunek staje się prawdziwy. | (A <B) jest prawdą. |
> = | Sprawdza, czy wartość lewego operandu jest większa lub równa wartości prawego operandu, jeśli tak, warunek staje się prawdziwy. | (A> = B) nie jest prawdą. |
<= | Sprawdza, czy wartość lewego operandu jest mniejsza lub równa wartości prawego operandu, jeśli tak, warunek staje się prawdziwy. | (A <= B) jest prawdą. |
Operatory logiczne
Poniższa tabela przedstawia wszystkie operatory logiczne obsługiwane przez język Lua. Przyjmij zmiennąA jest prawdziwe i zmienne B wtedy jest fałszywa -
Pokaż przykłady
Operator | Opis | Przykład |
---|---|---|
i | Nazywany operatorem logicznym AND. Jeśli oba operandy są niezerowe, warunek staje się prawdziwy. | (A i B) jest fałszem. |
lub | Nazywany operatorem logicznym OR. Jeśli którykolwiek z dwóch operandów jest różny od zera, warunek staje się prawdziwy. | (A lub B) jest prawdą. |
nie | Nazywany operatorem logicznym NOT. Służy do odwracania stanu logicznego operandu. Jeśli warunek jest spełniony, operator logiczny NOT spowoduje fałsz. | ! (A i B) jest prawdą. |
Różne operatory
Różne operatory obsługiwane przez język Lua obejmują concatenation i length.
Pokaż przykłady
Operator | Opis | Przykład |
---|---|---|
.. | Łączy dwa ciągi. | a..b, gdzie a to „Hello”, a b to „World”, zwróci „Hello World”. |
# | Operator jednoargumentowy, który zwraca długość łańcucha lub tabeli. | # „Hello” zwróci wartość 5 |
Pierwszeństwo operatorów w Lua
Pierwszeństwo operatorów określa grupowanie terminów w wyrażeniu. Ma to wpływ na sposób oceny wyrażenia. Niektórzy operatorzy mają wyższy priorytet niż inni; na przykład operator mnożenia ma wyższy priorytet niż operator dodawania -
Na przykład x = 7 + 3 * 2; Tutaj x ma przypisane 13, a nie 20, ponieważ operator * ma wyższy priorytet niż +, więc najpierw jest mnożony przez 3 * 2, a następnie sumowany do 7.
Tutaj operatory o najwyższym priorytecie pojawiają się na górze tabeli, a operatory o najniższym priorytecie - na dole. W wyrażeniu najpierw zostaną ocenione operatory o wyższym priorytecie.
Pokaż przykłady
Kategoria | Operator | Łączność |
---|---|---|
Jednoargumentowe | nie # - | Od prawej do lewej |
Powiązanie | .. | Od prawej do lewej |
Mnożny | * /% | Z lewej na prawą |
Przyłączeniowy | + - | Z lewej na prawą |
Relacyjny | <> <=> = == ~ = | Z lewej na prawą |
Równość | == ~ = | Z lewej na prawą |
Logiczne AND | i | Z lewej na prawą |
Logiczne LUB | lub | Z lewej na prawą |