F # - Operatörler
Operatör, derleyiciye belirli matematiksel veya mantıksal işlemleri gerçekleştirmesini söyleyen bir semboldür. F # yerleşik operatörler açısından zengindir ve aşağıdaki operatör türlerini sağlar -
- Aritmetik operatörler
- Karşılaştırma Operatörleri
- Boole Operatörleri
- Bitsel Operatörler
Aritmetik operatörler
Aşağıdaki tablo, F # dili tarafından desteklenen tüm aritmetik operatörleri göstermektedir. A değişkeninin 10, B değişkeninin 20 olduğunu varsayalım -
Örnek Göster
| Şebeke | Açıklama | Misal |
|---|---|---|
| + | İki işlenen ekler | A + B 30 verecek |
| - | İlk işlenenden ikinci işleneni çıkarır | A - B -10 verecek |
| * | Her iki işleneni de çarpar | A * B 200 verecek |
| / | Payı, numaratörden ayırıcıya böler | B / A 2 verecek |
| % | Modül İşleci ve bir tamsayı bölmesinden sonra kalanı | B% A 0 verir |
| ** | Üsleme Operatörü, bir işleneni diğerinin gücüne yükseltir | B ** A 20 10 verir |
Karşılaştırma Operatörleri
Aşağıdaki tablo, F # dili tarafından desteklenen tüm karşılaştırma operatörlerini göstermektedir. Bu ikili karşılaştırma operatörleri, integral ve kayan nokta türleri için kullanılabilir. Bu operatörler bool türünde değerler döndürür.
A değişkeninin 10, B değişkeninin 20 olduğunu varsayalım, o zaman -
Örnek Göster
| Şebeke | Açıklama | Misal |
|---|---|---|
| = | İki işlenenin değerlerinin eşit olup olmadığını kontrol eder, evet ise koşul doğru olur. | (A == B) doğru değil. |
| <> | İki işlenenin değerlerinin eşit olup olmadığını kontrol eder, değerler eşit değilse koşul doğru olur. | (A <> B) doğrudur. |
| > | Soldaki işlenenin değerinin sağ işlenenin değerinden büyük olup olmadığını kontrol eder, evet ise koşul doğru olur. | (A> B) doğru değil. |
| < | Soldaki işlenenin değerinin sağ işlenenin değerinden küçük olup olmadığını kontrol eder, evet ise koşul doğru olur. | (A <B) doğrudur. |
| > = | Sol işlenenin değerinin sağ işlenenin değerinden büyük veya ona eşit olup olmadığını kontrol eder, evet ise koşul doğru olur. | (A> = B) doğru değil. |
| <= | Sol işlenenin değerinin sağ işlenenin değerinden küçük veya ona eşit olup olmadığını kontrol eder, evet ise koşul doğru olur. | (A <= B) doğrudur. |
Boole Operatörleri
Aşağıdaki tablo, F # dili tarafından desteklenen tüm Boole operatörlerini gösterir. A değişkeninin tuttuğunu varsayıntrue ve değişken B tutmaları false, sonra -
Örnek Göster
| Şebeke | Açıklama | Misal |
|---|---|---|
| && | Boolean AND operatörü olarak adlandırılır. Her iki işlenen de sıfır değilse, koşul doğru olur. | (A && B) yanlıştır. |
| || | Boole VEYA Operatörü olarak adlandırılır. İki işlenenden herhangi biri sıfır değilse, koşul doğru olur. | (A || B) doğrudur. |
| değil | Boolean NOT Operatörü olarak adlandırıldı. İşlenenin mantıksal durumunu tersine çevirmek için kullanın. Bir koşul doğruysa, Mantıksal NOT operatörü yanlış yapar. | değil (A && B) doğru. |
Bitsel Operatörler
Bitsel operatörler bitler üzerinde çalışır ve bit bit işlem gerçekleştirir. &&& için doğruluk tabloları (bitsel AND), ||| (bitsel OR) ve ^^ ^ (bitsel özel OR) aşağıdaki gibidir -
Örnek Göster
| p | q | p &&& q | 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 ise; ve B = 13; şimdi ikili biçimde aşağıdaki gibi olacaklar -
Bir = 0011 1100
B = 0000 1101
-----------------A &&& B = 0000 1100
A ||| B = 0011 1101
A ^ ^ B = 0011 0001
~~~ A = 1100 0011
F # dili tarafından desteklenen Bitwise operatörleri aşağıdaki tabloda listelenmiştir. A değişkeninin 60 ve B değişkeninin 13 olduğunu varsayalım, o zaman -
| Şebeke | Açıklama | Misal |
|---|---|---|
| &&& | İkili AND İşleci, her iki işlenende de varsa sonuca bir bit kopyalar. | (A &&& B) 0000 1100 olan 12 verir |
| ||| | İkili VEYA İşleci, işlenenlerden herhangi birinde varsa bir bit kopyalar. | (A ||| B) 61 verecektir, 0011 1101 |
| ^^ ^ | İkili XOR İşleci, bir işlenen içinde ayarlanmışsa, ancak her ikisinde birden ayarlanmamışsa biti kopyalar. | (A ^ ^ B) 49 verecektir ki bu 0011 0001 |
| ~~~ | İkili Birler Tamamlayıcı Operatörü tekli ve bitleri 'çevirme' etkisine sahiptir. | (~~~ A), 2'nin tümleyen formunda 1100 0011 olan -61'i verecektir. |
| <<< | İkili Sol Kaydırma Operatörü. Soldaki işlenenler değeri, sağ işlenen tarafından belirtilen bit sayısı kadar sola taşınır. | Bir <<< 2, 1111 0000 olan 240 değerini verir |
| >>> | İkili Sağ Shift Operatörü. Soldaki işlenenler değeri, sağ işlenen tarafından belirtilen bit sayısı kadar sağa taşınır. | A >>> 2, 0000 1111 olan 15 verir |
Operatör Önceliği
Aşağıdaki tablo, en düşük öncelikten en yüksek önceliğe kadar F # dilinde operatörlerin ve diğer ifade anahtar kelimelerinin öncelik sırasını gösterir.
Örnek Göster
| Şebeke | İlişkisellik |
|---|---|
| gibi | Sağ |
| ne zaman | Sağ |
| | (boru) | Ayrıldı |
| ; | Sağ |
| İzin Vermek | İlişkisel değil |
| işlev, eğlence, eşleştirme, dene | İlişkisel değil |
| Eğer | İlişkisel değil |
| → | Sağ |
| : = | Sağ |
| , | İlişkisel değil |
| veya, || | Ayrıldı |
| &, && | Ayrıldı |
| <op,> op, =, | op, & op | Ayrıldı |
| &&&, |||, ^^ ^, ~~~, <<<, >>> | Ayrıldı |
| ^ op | Sağ |
| :: | Sağ |
| :?>,:? | İlişkisel değil |
| - op, + op, (ikili) | Ayrıldı |
| * op, / op,% op | Ayrıldı |
| ** op | Sağ |
| fx (işlev uygulaması) | Ayrıldı |
| | (desen eşleşmesi) | Sağ |
| önek operatörleri (+ op, -op,%, %%, &, &&,! op, ~ op) | Ayrıldı |
| . | Ayrıldı |
| f (x) | Ayrıldı |
| f <türler> | Ayrıldı |