F #-연산자
연산자는 컴파일러에게 특정 수학적 또는 논리적 조작을 수행하도록 지시하는 기호입니다. F #은 내장 연산자가 풍부하며 다음 유형의 연산자를 제공합니다.
- 산술 연산자
- 비교 연산자
- 부울 연산자
- 비트 연산자
산술 연산자
다음 표에는 F # 언어에서 지원하는 모든 산술 연산자가 나와 있습니다. 변수 A가 10을 보유하고 변수 B가 20을 보유한다고 가정하면-
보기 예
| 운영자 | 기술 | 예 |
|---|---|---|
| + | 두 개의 피연산자를 더합니다. | A + B는 30을 줄 것입니다 |
| - | 첫 번째에서 두 번째 피연산자를 뺍니다. | A-B는 -10을 줄 것입니다. |
| * | 두 피연산자를 곱합니다. | A * B는 200을 줄 것입니다 |
| / | 분자를 탈 분자로 나눕니다. | B / A는 2를 줄 것입니다 |
| % | 계수 연산자 및 정수 나누기 후의 나머지 | B % A는 0을 제공합니다. |
| ** | 지수 연산자, 피연산자를 다른 거듭 제곱으로 올립니다. | B ** A는 20 10 을 줄 것입니다 |
비교 연산자
다음 표에는 F # 언어에서 지원하는 모든 비교 연산자가 나와 있습니다. 이 이진 비교 연산자는 정수 및 부동 소수점 유형에 사용할 수 있습니다. 이러한 연산자는 bool 유형의 값을 반환합니다.
변수 A가 10을 보유하고 변수 B가 20을 보유한다고 가정하면-
보기 예
| 운영자 | 기술 | 예 |
|---|---|---|
| = | 두 피연산자의 값이 같은지 확인하고, 예이면 조건이 참이됩니다. | (A == B)는 사실이 아닙니다. |
| <> | 두 피연산자의 값이 같은지 확인하고, 값이 같지 않으면 조건이 참이됩니다. | (A <> B)는 사실입니다. |
| > | 왼쪽 피연산자의 값이 오른쪽 피연산자의 값보다 큰지 확인하고, 그렇다면 조건이 참이됩니다. | (A> B)는 사실이 아닙니다. |
| < | 왼쪽 피연산자의 값이 오른쪽 피연산자의 값보다 작은 지 확인하고, 그렇다면 조건이 참이됩니다. | (A <B)는 사실입니다. |
| > = | 왼쪽 피연산자의 값이 오른쪽 피연산자의 값보다 크거나 같은지 확인하고, 그렇다면 조건이 참이됩니다. | (A> = B)는 사실이 아닙니다. |
| <= | 왼쪽 피연산자의 값이 오른쪽 피연산자의 값보다 작거나 같은지 확인하고, 그렇다면 조건이 참이됩니다. | (A <= B)는 참입니다. |
부울 연산자
다음 표에는 F # 언어에서 지원하는 모든 부울 연산자가 나와 있습니다. 변수 A가 유지된다고 가정true 변수 B는 false, 다음-
보기 예
| 운영자 | 기술 | 예 |
|---|---|---|
| && | 부울 AND 연산자라고합니다. 두 피연산자가 모두 0이 아니면 조건이 참이됩니다. | (A && B)는 거짓입니다. |
| || | 부울 OR 연산자라고합니다. 두 피연산자 중 하나가 0이 아니면 조건이 참이됩니다. | (A || B) 사실입니다. |
| 아니 | 부울 NOT 연산자라고합니다. 피연산자의 논리 상태를 반전하는 데 사용합니다. 조건이 참이면 논리 NOT 연산자는 거짓으로 만듭니다. | not (A && B)는 사실입니다. |
비트 연산자
비트 연산자는 비트에 대해 작업하고 비트 단위 연산을 수행합니다. &&& (비트 AND), |||에 대한 진리표 (비트 OR) 및 ^^^ (비트 배타적 OR)은 다음과 같습니다.
보기 예
| 피 | 큐 | p &&& q | p ||| 큐 | 피 ^^^ q |
| 0 | 0 | 0 | 0 | 0 |
| 0 | 1 | 0 | 1 | 1 |
| 1 | 1 | 1 | 1 | 0 |
| 1 | 0 | 0 | 1 | 1 |
A = 60이라고 가정합니다. 그리고 B = 13; 이제 바이너리 형식으로 다음과 같이됩니다.
A = 0011 1100
B = 0000 1101
-----------------A &&& B = 0000 1100
A ||| B = 0011 1101
A ^^^ B = 0011 0001
~~~ A = 1100 0011
F # 언어에서 지원하는 Bitwise 연산자는 다음 표에 나열되어 있습니다. 변수 A가 60을 보유하고 변수 B가 13을 보유한다고 가정하면-
| 운영자 | 기술 | 예 |
|---|---|---|
| &&& | 이진 AND 연산자는 두 피연산자에 모두있는 경우 결과에 비트를 복사합니다. | (A &&& B)는 0000 1100 인 12를 줄 것입니다. |
| ||| | 이진 OR 연산자는 피연산자 중 하나에 있으면 비트를 복사합니다. | (A ||| B)는 61, 즉 0011 1101을 제공합니다. |
| ^^^ | 이진 XOR 연산자는 하나의 피연산자에만 설정되어 있지만 둘 다에 설정되지 않은 경우 비트를 복사합니다. | (A ^^^ B)는 49, 0011 0001입니다. |
| ~~~ | Binary Ones Complement Operator는 단항이며 비트를 '뒤집는'효과가 있습니다. | (~~~ A)는 -61을 제공하며 2의 보수 형태로 1100 0011입니다. |
| <<< | 이진 왼쪽 시프트 연산자. 왼쪽 피연산자 값은 오른쪽 피연산자에 지정된 비트 수만큼 왼쪽으로 이동합니다. | <<< 2는 1111 0000 인 240을 제공합니다. |
| >>> | 이진 오른쪽 시프트 연산자. 왼쪽 피연산자 값은 오른쪽 피연산자에 지정된 비트 수만큼 오른쪽으로 이동합니다. | A >>> 2는 0000 1111 인 15를 제공합니다. |
연산자 우선 순위
다음 표에서는 가장 낮은 우선 순위에서 가장 높은 우선 순위까지 F # 언어의 연산자 및 기타 식 키워드의 우선 순위를 보여줍니다.
보기 예
| 운영자 | 연관성 |
|---|---|
| 같이 | 권리 |
| 언제 | 권리 |
| | (파이프) | 왼쪽 |
| ; | 권리 |
| 허락하다 | 비 연관 |
| 기능, 재미, 일치, 시도 | 비 연관 |
| 만약 | 비 연관 |
| → | 권리 |
| : = | 권리 |
| , | 비 연관 |
| 또는 || | 왼쪽 |
| &, && | 왼쪽 |
| <op,> op, =, | op, & op | 왼쪽 |
| &&&, |||, ^^^, ~~~, <<<, >>> | 왼쪽 |
| ^ op | 권리 |
| :: | 권리 |
| :?>, :? | 비 연관 |
| -op, + op, (이진) | 왼쪽 |
| * op, / op, % op | 왼쪽 |
| ** op | 권리 |
| fx (함수 응용 프로그램) | 왼쪽 |
| | (패턴 매치) | 권리 |
| 접두사 연산자 (+ op, -op, %, %%, &, &&,! op, ~ op) | 왼쪽 |
| . | 왼쪽 |
| 에프 엑스 | 왼쪽 |
| f <유형> | 왼쪽 |