Udostępnij za pośrednictwem


Symbol i Operator odniesienia (F#)

Ten temat zawiera tabelę symboli i operatorów, które są używane w język F#.

Tabela symboli i operatorów

Poniższa tabela zawiera opis symboli używanych w język F#, zawiera łącza do tematów, zawierających więcej informacji i krótki opis niektórych zastosowań symbolu.Symbole są uporządkowane według ASCII zamawiania zestawu znaków.

Symbol lub operatora

Łącza

Opis

!

Odwoływanie się do komórek (F#)

Wyrażenia obliczeń (F#)

  • Rozstrzyga komórki odwołanie.

  • Po słowie kluczowym wskazuje zmodyfikowaną wersją zachowania słowa kluczowego, jak kontrolowane przez przepływ pracy.

!=

Nie dotyczy.

  • Nie używany w F#.Użycie <> dla operacji nierówności.

"

Literały (F#)

Ciągi znaków (F#)

  • Rozdziela ciąg tekstowy.

"""

Ciągi znaków (F#)

Rozdziela ciąg tekstowy słowo po słowie.Różni się od @"..." w tym można wskazać znaki apostrofu przy użyciu pojedynczego cudzysłowu w ciągu.

#

Dyrektyw kompilatora (F#)

Typy elastyczne (F#)

  • Prefiksy dyrektywy preprocesora lub kompilatora, takich jak #light.

  • Wskazuje, gdy używana z typem, elastyczne typu, które odwołuje się do typu lub jednego z jego typów pochodnych.

$

Nie więcej dostępnych informacji.

  • Używane wewnętrznie, dla niektórych generowanych przez kompilator nazwy zmiennych oraz funkcji.

%

Operatory arytmetyczne (F#)

Kod ofert (F#)

  • Oblicza moduł liczby całkowitej.Używany do zestawiania łączy ofert.

%?

Operatory Nullable (F#)

Oblicza modulus liczba całkowita, po prawej stronie jest typem niewymaganym.

&

Dopasowanie wyrażeń (F#)

  • Oblicza adres wartość tych, do użycia przy współpracy z innych języków.

  • Używane w i desenie.

&&

Operatory logiczne (F#)

  • Służy do obliczania operacja logiczna i.

&&&

Operatory bitowe (F#)

  • Służy do obliczania logiczną operację AND.

'

Literały (F#)

Automatyczne generalizacji (F#)

  • Rozdziela literału pojedynczych znaków.

  • Wskazuje parametr typu rodzajowego.

``...``

Nie więcej dostępnych informacji.

  • Rozdziela identyfikator, który w przeciwnym razie byłoby nie prawnych identyfikator, na przykład słowo kluczowe języka.

( )

Typ jednostki (F#)

  • Reprezentuje wartość pojedynczego typu jednostki.

(...)

Krotek (F#)

Przeciążanie (F#)

  • Wskazuje kolejność, w którym są obliczane wyrażenia.

  • Rozdziela spójnej kolekcji.

  • Używany w definicji operatora.

(*...*)

  • Rozdziela komentarz, który może obejmować wiele wierszy.

(|...|)

Desenie Active (F#)

  • Rozdziela active deseń.Nazywany także klipy bananów.

*

Operatory arytmetyczne (F#)

Krotek (F#)

Jednostki miary (F#)

  • Gdy używany jako operatora dwuargumentowego, mnoży się po lewej i prawej krawędzi.

  • W polu typy wskazuje parowanie w spójnej kolekcji.

  • Używane w jednostkach typy miar.

*?

Operatory Nullable (F#)

  1. Mnoży po lewej i prawej krawędzi, po prawej stronie jest typem niewymaganym.

**

Operatory arytmetyczne (F#)

  • Oblicza operacji potęgowanie (x ** y oznacza x do potęgi y).

+

Operatory arytmetyczne (F#)

  • Gdy używany jako operatora dwuargumentowego, dodaje się po lewej i prawej krawędzi.

  • Gdy używany jako operatora jednoargumentowego, wskazuje ilość dodatnią.(Formalnie, produkuje taką samą wartość ze znakiem bez zmian.)

+?

Operatory Nullable (F#)

  1. Dodaje po lewej i prawej krawędzi, po prawej stronie jest typem niewymaganym.

,

Krotek (F#)

  • Oddziela elementy spójnej kolekcji lub parametrów typu.

-

Operatory arytmetyczne (F#)

  • Gdy używany jako operatora dwuargumentowego, odejmuje się po prawej stronie od lewej strony.

  • Gdy używany jako operatora jednoargumentowego, wykonuje operację negacji.

-

Operatory Nullable (F#)

  1. Odejmuje po prawej stronie od lewej strony, po prawej stronie jest typem niewymaganym.

->

Funkcje (F#)

Dopasowanie wyrażeń (F#)

  • W funkcji typów, rozdziela argumenty i zwracać wartości.

  • Daje wyrażenie (w wyrażeniach sekwencji); równoważne z yield słowa kluczowego.

  • Używane w wyrażeniach meczu

.

Członkowie (F#)

Typów pierwotnych (F#)

  • Uzyskuje dostęp do członka, a oddziela poszczególne nazwy w pełni kwalifikowanej nazwy.

  • Określa przecinek dziesiętny liczb zmiennoprzecinkowych.

..

Pętle: for... w wyrażenie (F#)

  • Określa zakres.

.. ..

Pętle: for... w wyrażenie (F#)

  • Określa zakres wraz z przyrostem.

.[...]

Tablice (F#)

  • Uzyskuje dostęp do elementu tablicy.

/

Operatory arytmetyczne (F#)

Jednostki miary (F#)

  • Dzieli po lewej stronie (licznik) po prawej stronie (dzielnik).

  • Używane w jednostkach typy miar.

/?

Operatory Nullable (F#)

  1. Dzieli po lewej stronie po prawej stronie, po prawej stronie jest typem niewymaganym.

//

  • Wskazuje na początek komentarz jednowierszowy.

///

Plik dokumentacji XML (F#)

  • Wskazuje komentarz XML.

:

Funkcje (F#)

  • W wskazania typu danych oddziela nazwę parametru lub Członkowskich od jego typu.

::

List (F#)

Dopasowanie wyrażeń (F#)

  • Tworzy listę.Element po lewej stronie jest dołączane do listy po prawej stronie.

  • Używany w dopasowania wzorca do oddzielania części listy.

:=

Odwoływanie się do komórek (F#)

  • Przypisuje wartość do komórki odwołanie.

:>

Konwersje (F#) i odlewania

  • Konwertuje typu na typ, który jest wyżej w hierarchii.

:?

Dopasowanie wyrażeń (F#)

  • Zwraca true Jeśli wartość pasuje do określonego typu; w przeciwnym razie zwraca false (operator badanie typu).

:?>

Konwersje (F#) i odlewania

  • Konwertuje typu na typ, który znajduje się niżej w hierarchii.

;

Składnia Verbose (F#)

List (F#)

Rekordy (F#)

  • Oddziela wyrażenia (używane głównie w trybie pełnym składni).

  • Oddziela elementy listy.

  • Oddziela pola rekordu.

<

Operatory arytmetyczne (F#)

  • Oblicza mniej-niż operacja.

<?

Operatory Nullable (F#)

Oblicza poniżej operacji, po prawej stronie jest typem niewymaganym.

<<

Funkcje (F#)

  • Redaguje dwie funkcje w odwrotnej kolejności; drugi z nich jest wykonywana pierwszy (operator składu do tyłu).

<<<

Operatory bitowe (F#)

  • Przesuwa bity w polach Ilość po lewej stronie w lewo przez liczby bitów określonej po prawej stronie.

<-

Wartości (F#)

  • Przypisuje wartość do zmiennej.

<...>

Automatyczne generalizacji (F#)

  • Rozdziela parametrów typu.

<>

Operatory arytmetyczne (F#)

  • Zwraca true Jeśli po lewej stronie nie jest równy po prawej stronie; w przeciwnym razie zwraca wartość false.

<>?

Operatory Nullable (F#)

  1. Oblicza operacji "różne", po prawej stronie jest typem niewymaganym.

<=

Operatory arytmetyczne (F#)

  • Zwraca true Jeśli po lewej stronie jest mniejsza lub równa prawej stronie; w przeciwnym razie zwraca wartość false.

<=?

Operatory Nullable (F#)

  1. Oblicza operację "mniej niż lub równa", po prawej stronie jest typem niewymaganym.

<|

Funkcje (F#)

  • Przekazuje wynik wyrażenia po prawej stronie, do funkcji po lewej stronie (operator potoku do tyłu).

<||

Podmioty gospodarcze.( <|| )<'U T1, "T2" > Funkcja (F#)

  • Przekazuje tuple dwa argumenty po prawej stronie, do funkcji po lewej stronie.

<|||

Podmioty gospodarcze.( <||| )< U "T1,"T2", T3," > Funkcja (F#)

  • Przekazuje tuple trzy argumenty po prawej stronie, do funkcji po lewej stronie.

<@...@>

Kod ofert (F#)

  • Rozdziela oferty kod maszynowy.

<@@...@@>

Kod ofert (F#)

  • Rozdziela cudzysłowu bez typu kodu.

=

Operatory arytmetyczne (F#)

  • Zwraca true Jeśli po lewej stronie jest równy po prawej stronie; w przeciwnym razie zwraca wartość false.

=?

Operatory Nullable (F#)

  1. Oblicza "równe" operacji, po prawej stronie jest typem niewymaganym.

==

Nie dotyczy.

  • Nie używany w F#.Użycie = dla operacji równości.

>

Operatory arytmetyczne (F#)

  • Zwraca true Jeśli po lewej stronie jest większa od prawej strony; w przeciwnym razie zwraca wartość false.

>?

Operatory Nullable (F#)

  1. Oblicza operacji "większy od", po prawej stronie jest typem niewymaganym.

>>

Funkcje (F#)

  • Składa się z dwóch funkcji (operator składu do przodu).

>>>

Operatory bitowe (F#)

  • Bity zmiany w ilości po lewej stronie po prawej stronie przez liczbę miejsc określony po prawej stronie.

>=

Operatory arytmetyczne (F#)

  • Zwraca true Jeśli po prawej stronie jest większa niż lub równe po lewej stronie; w przeciwnym razie zwraca wartość false.

>=?

Operatory Nullable (F#)

  1. Oblicza operacji "większe lub równe", po prawej stronie jest typem niewymaganym.

?

Parametry i argumenty (F#)

  • Określa opcjonalny argument.

  • Używany jako podmiot gospodarczy, dla dynamicznych wywołań metod i właściwości.Musisz podać własne implementacji.

? ... <- ...

Nie więcej dostępnych informacji.

  • Używane jako operator ustawienie właściwości dynamicznych.Musisz podać własne implementacji.

?>=, ?>, ?<=, ?<, ?=, ?<>, ?+, ?-, ?*, ?/

Operatory Nullable (F#)

  1. Równoważne odpowiednie podmioty gospodarcze bez?Prefiks, gdzie jest typem niewymaganym po lewej stronie.

>=?, >?, <=?, <?, =?, <>?, +?, -?, *?, /?

Operatory Nullable (F#)

  1. Równoważne odpowiednie podmioty gospodarcze bez?sufiks, gdzie jest typem niewymaganym po prawej stronie.

?>=?, ?>?, ?<=?, ?<?, ?=?, ?<>?, ?+?, ?-?, ?*?, ?/?

Operatory Nullable (F#)

  1. Równoważne odpowiednie podmioty gospodarcze bez otaczających znaki zapytania, w którym obie strony są typami nullable.

@

List (F#)

Ciągi znaków (F#)

  • Łączy dwie listy.

  • Po umieszczeniu przed ciągiem literału, wskazuje, że ciąg jest należy interpretować dosłownie, z żadnej interpretacji znaków escape.

[...]

List (F#)

  • Rozdziela elementy listy.

[|...|]

Tablice (F#)

  • Rozdziela elementy tablicy.

[<...>]

Atrybuty (F#)

  • Rozdziela atrybut.

\

Ciągi znaków (F#)

  • Powoduje przejście w tryb następnego znaku; używane w literały ciągów znaków i ciąg znaków.

^

Statycznie rozwiązane parametrów typu (F#)

Ciągi znaków (F#)

  • Określa parametry typu, które należy dokonać zmian w czasie kompilacji, a nie w czasie wykonywania.

  • Łączy ciągi.

^^^

Operatory bitowe (F#)

  • Służy do obliczania bitowe wyłączną operację OR.

_

Dopasowanie wyrażeń (F#)

Generyczne (F#)

  • Wskazuje wzór symboli wieloznacznych.

  • Określa anonimowe parametru rodzajowego.

`

Automatyczne generalizacji (F#)

  • Używane wewnętrznie, aby wskazać parametr typu rodzajowego.

{...}

Sekwencje (F#)

Rekordy (F#)

  • Rozdziela wyrażenia sekwencji i wyrażenia obliczeń.

  • Używany w definicji rekordu.

|

Dopasowanie wyrażeń (F#)

  • Rozdziela dopasowanie indywidualnych przypadkach, indywidualnych przypadkach Unii dyskryminowane i wartości wyliczenia.

||

Operatory logiczne (F#)

  • Służy do obliczania operację logiczną lub.

|||

Operatory bitowe (F#)

  • Służy do obliczania logiczną operację lub.

|>

Funkcje (F#)

  • Przekazuje wynik po lewej stronie do funkcji, po prawej stronie (operator potoku do przodu).

||>

Podmioty gospodarcze.( ||> ) <'U T1, "T2" > Funkcja (F#)

  • Przekazuje tuple dwa argumenty po lewej stronie do funkcji po prawej stronie.

|||>

Podmioty gospodarcze.( |||> ) < U "T1,"T2", T3," > Funkcja (F#)

  1. Przekazuje tuple trzy argumenty po lewej stronie do funkcji po prawej stronie.

~~

Przeciążanie (F#)

  • Używane, aby zadeklarować przeciążenie dla operatora jednoargumentowego negacji.

~~~

Operatory bitowe (F#)

  • Oblicza bitowe nie operacji.

~-

Przeciążanie (F#)

  • Wykorzystywane do ogłoszenia przeciążenie dla minus (Jednoargumentowy operator).

~+

Przeciążanie (F#)

  • Wykorzystywane do ogłoszenia przeciążenie dla jednoargumentowe oraz operator.

Pierwszeństwo operatorów

W poniższej tabeli przedstawiono kolejność pierwszeństwa operatorów i inne słowa kluczowe wyrażenia w języku F#, w kolejności od najniższego do najwyższego.Na liście również jest łączność, jeśli ma zastosowanie.

Operator

Zespolenie

as

Prawa

when

Prawa

| (pionowa kreska)

Lewo

;

Prawa

let

Niezespolone

function, fun, match, try

Niezespolone

if

Niezespolone

->

Prawa

:=

Prawa

,

Niezespolone

or, ||

Lewo

&, &&

Lewo

<op, >op, =, |op, &op

Lewo

&&&, |||, ^^^, ~~~, <<<, >>>

Lewo

^op

Prawa

::

Prawa

:?>, :?

Niezespolone

-op, +op, (binary)

Lewo

*op, /op, %op

Lewo

**op

Prawa

f x(funkcja aplikacji)

Lewo

| (dopasowanie do wzorca)

Prawa

Prefiks operatorów (+op, -op, %, %% &, & &,!op, ~op)

Lewo

.

Lewo

f(x)

Lewo

f<types>

Lewo

Język F# obsługuje niestandardowe przeciążanie operatora.Oznacza to, że można zdefiniować własne podmiotów gospodarczych.W poprzedniej tabeli op może być dowolną prawidłową sekwencją (ewentualnie pusty), operator znaków, wbudowane lub zdefiniowane przez użytkownika.W ten sposób można użyć tej tabeli ustalenie, jakie sekwencji znaków do użycia dla niestandardowych operatora do osiągnięcia pożądanego poziomu pierwszeństwo.Prowadzi . znaki są ignorowane, gdy kompilator uzna za priorytet.

Zobacz też

Informacje

Przeciążanie (F#)

Inne zasoby

F# Language Reference