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 <유형> | 왼쪽 |