견고성-연산자

운영자는 무엇입니까?

간단한 표현을합시다 4 + 5 is equal to 9. 여기서 4와 5는operands 그리고 '+'는 operator. Solidity는 다음 유형의 연산자를 지원합니다.

  • 산술 연산자
  • 비교 연산자
  • 논리 (또는 관계형) 연산자
  • 할당 연산자
  • 조건부 (또는 삼항) 연산자

모든 연산자를 하나씩 살펴 보겠습니다.

산술 연산자

Solidity는 다음 산술 연산자를 지원합니다-

변수 A가 10을 보유하고 변수 B가 20을 보유한다고 가정하면-

보기 예

Sr. 아니. 연산자 및 설명
1

+ (Addition)

두 개의 피연산자를 더합니다.

Ex: A + B는 30을 줄 것입니다

2

- (Subtraction)

첫 번째에서 두 번째 피연산자를 뺍니다.

Ex: A-B는 -10을 줄 것입니다.

* (Multiplication)

두 피연산자 곱하기

Ex: A * B는 200을 줄 것입니다

4

/ (Division)

분자를 분모로 나눕니다.

Ex: B / A는 2를 줄 것입니다

5

% (Modulus)

정수 나눗셈의 나머지를 출력합니다.

Ex: B % A는 0을 제공합니다.

6

++ (Increment)

정수 값을 1 씩 증가시킵니다.

Ex: A ++는 11을 줄 것입니다

7

-- (Decrement)

정수 값을 1 씩 줄입니다.

Ex: A-- 9를 줄 것입니다

비교 연산자

Solidity는 다음 비교 연산자를 지원합니다-

변수 A가 10을 보유하고 변수 B가 20을 보유한다고 가정하면-

보기 예

Sr. 아니. 연산자 및 설명
1

= = (Equal)

두 피연산자의 값이 같은지 확인합니다. 그렇다면 조건이 참이됩니다.

Ex: (A == B)는 사실이 아닙니다.

2

!= (Not Equal)

두 피연산자의 값이 같은지 확인하고 값이 같지 않으면 조건이 true가됩니다.

Ex: (A! = B)는 사실입니다.

> (Greater than)

왼쪽 피연산자의 값이 오른쪽 피연산자의 값보다 큰지 확인하고, 그렇다면 조건이 참이됩니다.

Ex: (A> B)는 사실이 아닙니다.

4

< (Less than)

왼쪽 피연산자의 값이 오른쪽 피연산자의 값보다 작은 지 확인하고, 그렇다면 조건이 참이됩니다.

Ex: (A <B)는 사실입니다.

5

>= (Greater than or Equal to)

왼쪽 피연산자의 값이 오른쪽 피연산자의 값보다 크거나 같은지 확인합니다. 그렇다면 조건이 참이됩니다.

Ex: (A> = B)는 사실이 아닙니다.

6

<= (Less than or Equal to)

왼쪽 피연산자의 값이 오른쪽 피연산자의 값보다 작거나 같은지 확인하고, 그렇다면 조건이 참이됩니다.

Ex: (A <= B)는 참입니다.

논리 연산자

Solidity는 다음 논리 연산자를 지원합니다-

변수 A가 10을 보유하고 변수 B가 20을 보유한다고 가정하면-

보기 예

Sr. 아니. 연산자 및 설명
1

&& (Logical AND)

두 피연산자가 모두 0이 아니면 조건이 참이됩니다.

Ex: (A && B)는 사실입니다.

2

|| (Logical OR)

두 피연산자 중 하나가 0이 아니면 조건이 참이됩니다.

Ex: (A || B) 사실입니다.

! (Logical NOT)

피연산자의 논리적 상태를 되돌립니다. 조건이 참이면 논리 NOT 연산자는 조건을 거짓으로 만듭니다.

Ex:! (A && B)는 거짓입니다.

비트 연산자

Solidity는 다음과 같은 비트 연산자를 지원합니다.

변수 A에 2가 있고 변수 B에 3이 있다고 가정하면-

보기 예

Sr. 아니. 연산자 및 설명
1

& (Bitwise AND)

정수 인수의 각 비트에 대해 부울 AND 연산을 수행합니다.

Ex: (A & B)는 2입니다.

2

| (BitWise OR)

정수 인수의 각 비트에 대해 부울 OR 연산을 수행합니다.

Ex: (A | B)는 3입니다.

^ (Bitwise XOR)

정수 인수의 각 비트에 대해 부울 배타적 OR 연산을 수행합니다. 배타적 OR은 피연산자 1이 참이거나 피연산자 2가 참이지만 둘다는 아니라는 것을 의미합니다.

Ex: (A ^ B)는 1입니다.

4

~ (Bitwise Not)

단항 연산자이며 피연산자의 모든 비트를 반전하여 작동합니다.

Ex: (~ B)는 -4입니다.

5

<< (Left Shift)

첫 번째 피연산자의 모든 비트를 두 번째 피연산자에 지정된 자릿수만큼 왼쪽으로 이동합니다. 새 비트는 0으로 채워집니다. 값을 한 위치 왼쪽으로 이동하는 것은 2를 곱하는 것과 같고, 두 위치를 이동하는 것은 4를 곱하는 것과 같습니다.

Ex: (A << 1)은 4입니다.

6

>> (Right Shift)

이진 오른쪽 시프트 연산자. 왼쪽 피연산자의 값은 오른쪽 피연산자가 지정한 비트 수만큼 오른쪽으로 이동합니다.

Ex: (A >> 1)은 1입니다.

7

>>> (Right shift with Zero)

이 연산자는 >> 연산자와 비슷하지만 왼쪽에서 이동 된 비트가 항상 0이라는 점이 다릅니다.

Ex: (A >>> 1)은 1입니다.

할당 연산자

Solidity는 다음 할당 연산자를 지원합니다-

보기 예

Sr. 아니. 연산자 및 설명
1

= (Simple Assignment )

오른쪽 피연산자의 값을 왼쪽 피연산자에 할당합니다.

Ex: C = A + B는 A + B의 값을 C에 할당합니다.

2

+= (Add and Assignment)

왼쪽 피연산자에 오른쪽 피연산자를 추가하고 결과를 왼쪽 피연산자에 할당합니다.

Ex: C + = A는 C = C + A와 같습니다.

−= (Subtract and Assignment)

왼쪽 피연산자에서 오른쪽 피연산자를 빼고 결과를 왼쪽 피연산자에 할당합니다.

Ex: C-= A는 C = C-A와 같습니다.

4

*= (Multiply and Assignment)

오른쪽 피연산자와 왼쪽 피연산자를 곱하고 결과를 왼쪽 피연산자에 할당합니다.

Ex: C * = A는 C = C * A와 같습니다.

5

/= (Divide and Assignment)

왼쪽 피연산자를 오른쪽 피연산자로 나누고 결과를 왼쪽 피연산자에 할당합니다.

Ex: C / = A는 C = C / A와 같습니다.

6

%= (Modules and Assignment)

두 개의 피연산자를 사용하여 모듈러스를 취하고 결과를 왼쪽 피연산자에 할당합니다.

Ex: C % = A는 C = C % A와 동일합니다.

Note − 동일한 논리가 Bitwise 연산자에 적용되므로 << =, >> =, >> =, & =, | = 및 ^ =처럼됩니다.

조건부 연산자 (? :)

조건부 연산자는 먼저 표현식에서 참 또는 거짓 값을 평가 한 다음 평가 결과에 따라 주어진 두 문 중 하나를 실행합니다.

보기 예

Sr. 아니. 연산자 및 설명
1

? : (Conditional )

조건이 참이면? 그런 다음 값 X : 그렇지 않으면 값 Y