Lua-연산자

연산자는 인터프리터에게 특정 수학적 또는 논리적 조작을 수행하도록 지시하는 기호입니다. Lua 언어는 내장 연산자가 풍부하며 다음 유형의 연산자를 제공합니다.

  • 산술 연산자
  • 관계 연산자
  • 논리 연산자
  • 기타 연산자

이 튜토리얼에서는 산술, 관계형, 논리 및 기타 기타 연산자를 하나씩 설명합니다.

산술 연산자

다음 표는 Lua 언어에서 지원하는 모든 산술 연산자를 보여줍니다. 변수 가정A 10 개와 가변 B 20을 보유하고-

예시보기

운영자 기술
+ 두 개의 피연산자를 더합니다. A + B는 30을 줄 것입니다
- 첫 번째에서 두 번째 피연산자를 뺍니다. A-B는 -10을 줄 것입니다.
* 두 피연산자 곱하기 A * B는 200을 줄 것입니다
/ 분자를 탈 분자로 나누기 B / A는 2를 줄 것입니다
% 계수 연산자 및 정수 나누기 후의 나머지 B % A는 0을 제공합니다.
^ 지수 연산자는 지수를 취합니다. A ^ 2는 100을 제공합니다.
- 단항-연산자가 부정 역할을 함 -A는 -10을 줄 것입니다

관계 연산자

다음 표는 Lua 언어에서 지원하는 모든 관계 연산자를 보여줍니다. 변수 가정A 10 개와 가변 B 20을 보유하고-

예시보기

운영자 기술
== 두 피연산자의 값이 같은지 확인합니다. 그렇다면 조건이 참이됩니다. (A == B)는 사실이 아닙니다.
~ = 두 피연산자의 값이 같은지 확인하고, 값이 같지 않으면 조건이 참이됩니다. (A ~ = B)는 사실입니다.
> 왼쪽 피연산자의 값이 오른쪽 피연산자의 값보다 큰지 확인하고, 그렇다면 조건이 참이됩니다. (A> B)는 사실이 아닙니다.
< 왼쪽 피연산자의 값이 오른쪽 피연산자의 값보다 작은 지 확인하고, 그렇다면 조건이 참이됩니다. (A <B)는 사실입니다.
> = 왼쪽 피연산자의 값이 오른쪽 피연산자의 값보다 크거나 같은지 확인하고, 그렇다면 조건이 참이됩니다. (A> = B)는 사실이 아닙니다.
<= 왼쪽 피연산자의 값이 오른쪽 피연산자의 값보다 작거나 같은지 확인하고, 그렇다면 조건이 참이됩니다. (A <= B)는 참입니다.

논리 연산자

다음 표는 Lua 언어에서 지원하는 모든 논리 연산자를 보여줍니다. 변수 가정A 진실하고 가변적이다 B 거짓을 유지하고-

예시보기

운영자 기술
논리 AND 연산자라고합니다. 두 피연산자가 모두 0이 아니면 조건이 참이됩니다. (A와 B)는 거짓입니다.
또는 논리 OR 연산자라고합니다. 두 피연산자 중 하나가 0이 아니면 조건이 참이됩니다. (A 또는 B)가 참입니다.
아니 논리 NOT 연산자라고합니다. 피연산자의 논리 상태를 반전하는 데 사용합니다. 조건이 참이면 논리 NOT 연산자는 거짓으로 만듭니다. ! (A 및 B)는 참입니다.

기타 연산자

Lua 언어에서 지원하는 기타 연산자는 다음과 같습니다. concatenationlength.

예시보기

운영자 기술
.. 두 문자열을 연결합니다. a..b 여기서 a는 "Hello"이고 b는 "World"이면 "Hello World"를 반환합니다.
# 문자열 또는 테이블의 길이를 반환하는 단항 연산자. # "Hello"는 5를 반환합니다.

Lua의 연산자 우선 순위

연산자 우선 순위는 식에서 용어 그룹화를 결정합니다. 이는식이 평가되는 방식에 영향을줍니다. 특정 연산자는 다른 연산자보다 우선 순위가 높습니다. 예를 들어 곱셈 연산자는 더하기 연산자보다 우선 순위가 높습니다.

예를 들어, x = 7 + 3 * 2; 여기서 x는 20이 아니라 13으로 할당됩니다. 연산자 *는 +보다 우선 순위가 높기 때문에 먼저 3 * 2를 곱한 다음 7에 더합니다.

여기에서 우선 순위가 가장 높은 연산자는 테이블 맨 위에 표시되고 가장 낮은 연산자는 맨 아래에 표시됩니다. 식 내에서 우선 순위가 높은 연산자가 먼저 평가됩니다.

예시보기

범주 운영자 연관성
단항 아니 #- 오른쪽에서 왼쪽으로
연쇄 .. 오른쪽에서 왼쪽으로
곱셈 * / % 좌에서 우로
첨가물 +- 좌에서 우로
관계형 <> <=> = == ~ =  좌에서 우로
평등 == ~ = 좌에서 우로
논리적 AND 좌에서 우로
논리적 OR 또는 좌에서 우로