Skip to main content

연산자

소개

Wave 언어는 다양한 연산자를 제공하여 변수 간의 계산, 논리 판단, 비교, 비트 연산 등을 수행할 수 있습니다.

이 문서에서는 Wave에서 사용할 수 있는 주요 연산자들을 종류별로 나누어 설명하고, 각각의 동작 방식과 예제를 함께 제공합니다.

연산자는 다음과 같은 범주로 나뉩니다:

  • 산술 연산자
  • 비교 연산자
  • 논리 연산자
  • 비트 연산자
  • 할당 연산자
  • 기타 특수 연산자

산술 연산자

산술 연산자는 숫자 데이터를 대상으로 기본적인 수학 연산을 수행합니다.

연산자설명예시 (a = 10, b = 3)
+덧셈a + b13
-뺄셈a - b7
*곱셈a * b30
/나눗셈a / b3 (정수 나눗셈)
%나머지 연산a % b1

비교 연산자

비교 연산자는 두 값을 비교한 결과로 bool 값을 반환합니다.

연산자설명예시 (a = 10, b = 3)
==같음a == bfalse
!=다름a != btrue
<작음a < bfalse
>a > btrue
<=작거나 같음a <= 10true
>=크거나 같음a >= btrue

논리 연산자

논리 연산자는 bool 값에 대해 참/거짓의 조합을 처리합니다.

연산자이름설명예시
&&논리 AND두 값이 모두 true일 때만 truetrue && falsefalse
||논리 OR둘 중 하나라도 true이면 truetrue || falsetrue
!논리 NOTtruefalse로, falsetrue로 반전!truefalse

비트 연산자

비트 연산자는 정수형 데이터를 비트 단위로 조작합니다.

연산자이름설명예시
&비트 AND두 비트가 모두 1일 때 1a & b2
|비트 OR두 비트 중 하나라도 1이면 1a | b7
^비트 XOR두 비트가 다를 때 1a ^ b5
~비트 NOT비트를 반전~a-7
<<왼쪽 시프트비트를 왼쪽으로 이동a << 112
>>오른쪽 시프트비트를 오른쪽으로 이동a >> 13

할당 연산자

값을 변수에 저장할 때 사용합니다. 대부분의 경우 산술 연산자와 결합하여 축약할 수 있습니다.

연산자설명예시 (a = 5)
=기본 할당a = 10
+=덧셈 후 할당a += 27
-=뺄셈 후 할당a -= 14
*=곱셈 후 할당a *= 315
/=나눗셈 후 할당a /= 51
%=나머지 후 할당a %= 41

기타 특수 연산자

Wave는 다음과 같은 고유 또는 특별한 의미를 가진 연산자들도 제공합니다.

연산자이름설명예시
??null 병합 연산자왼쪽 값이 null일 경우 오른쪽 값을 사용a ?? ba가 null이면 b
?:조건 연산자 (삼항 연산자)조건에 따라 값을 선택조건 ? 참값 : 거짓값
in포함 여부 확인값이 컬렉션에 포함되어 있는지 확인"a" in list
is타입 비교 연산자값의 타입을 확인x is i32
!&NAND논리 NAND 연산고급 논리 연산
!|NOR논리 NOR 연산고급 논리 연산
~^XNOR논리 XNOR 연산고급 논리 연산

요약

Wave는 수학적 연산부터 논리 판단, 비트 조작, 조건 분기까지 다양한 연산자를 제공합니다. 이러한 연산자들은 변수와 상호작용하거나 조건을 구성하고, 복잡한 계산이나 흐름 제어에 필수적인 도구입니다.

각 연산자의 우선순위와 결합 방향 등은 추후 "우선순위 및 평가 순서" 섹션에서 다룰 수 있습니다.