Referência de símbolos e operadores (F#)
Este tópico inclui uma tabela de símbolos e operadores usados na linguagem F#.
Tabela de Símbolos e Operadores
A tabela a seguir descreve os símbolos usados na linguagem F#, fornece links para tópicos que contêm mais informações e fornece uma breve descrição de alguns dos usos do símbolo. Os símbolos são organizados de acordo com a ordem de conjunto de caracteres ASCII.
Símbolo ou operador |
Links |
Descrição |
---|---|---|
! |
|
|
!= |
Não aplicável. |
|
" |
|
|
""" |
Delimita uma cadeia de caracteres textuais. Difere de @"..." em que você pode indicar um caractere de aspas usando aspas simples na cadeia de caracteres. |
|
# |
|
|
$ |
Não há mais informações disponíveis. |
|
% |
|
|
%% |
|
|
%? |
|
|
& |
|
|
&& |
|
|
&&& |
|
|
' |
|
|
``...`` |
Não há mais informações disponíveis. |
|
( ) |
|
|
(...) |
|
|
(*...*) |
|
|
(|...|) |
|
|
* |
|
|
*? |
|
|
** |
|
|
+ |
|
|
+? |
|
|
, |
|
|
- |
|
|
- |
|
|
-> |
|
|
. |
|
|
.. |
|
|
.. .. |
|
|
.[...] |
|
|
/ |
|
|
/? |
|
|
// |
|
|
/// |
|
|
: |
|
|
:: |
|
|
:= |
|
|
:> |
|
|
:? |
|
|
:?> |
|
|
; |
|
|
< |
|
|
<? |
Calcula a operação menor que, quando o lado direito for um tipo que permite valor nulo. |
|
<< |
|
|
<<< |
|
|
<- |
|
|
<...> |
|
|
<> |
|
|
<>? |
|
|
<= |
|
|
<=? |
|
|
<| |
|
|
<|| |
|
|
<||| |
|
|
<@...@> |
|
|
<@@...@@> |
|
|
= |
|
|
=? |
|
|
== |
Não aplicável. |
|
> |
|
|
>? |
|
|
>> |
|
|
>>> |
|
|
>= |
|
|
>=? |
|
|
? |
|
|
? ... <- ... |
Não há mais informações disponíveis. |
|
?>=, ?>, ?<=, ?<, ?=, ?<>, ?+, ?-, ?*, ?/ |
|
|
>=?, >?, <=?, <?, =?, <>?, +?, -?, *?, /? |
|
|
?>=?, ?>?, ?<=?, ?<?, ?=?, ?<>?, ?+?, ?-?, ?*?, ?/? |
|
|
@ |
|
|
[...] |
|
|
[|...|] |
|
|
[<...>] |
|
|
\ |
|
|
^ |
|
|
^^^ |
|
|
_ |
|
|
` |
|
|
{...} |
|
|
| |
|
|
|| |
|
|
||| |
|
|
|> |
|
|
||> |
|
|
|||> |
|
|
~~ |
|
|
~~~ |
|
|
~- |
|
|
~+ |
|
Precedência do Operador
A tabela a seguir mostra a ordem de precedência de operadores e outras palavras-chave da expressão na linguagem F#, na ordem de precedência mais baixa para a mais alta. Também é listada a capacidade de associação, se aplicável.
Operador |
Associatividade |
---|---|
as |
Direita |
when |
Direita |
| (barra vertical) |
Esquerda |
; |
Direita |
let |
Não associativo |
function, fun, match, try |
Não associativo |
if |
Não associativo |
-> |
Direita |
:= |
Direita |
, |
Não associativo |
or, || |
Esquerda |
&, && |
Esquerda |
<op, >op, =, |op, &op |
Esquerda |
&&&, |||, ^^^, ~~~, <<<, >>> |
Esquerda |
^op |
Direita |
:: |
Direita |
:?>, :? |
Não associativo |
-op, +op, (binário) |
Esquerda |
*op, /op, %op |
Esquerda |
**op |
Direita |
f x (aplicativo de função) |
Esquerda |
| (correspondência padrão) |
Direita |
operadores de prefixo (+op, -op, %, %%, &, &&, !op, ~op) |
Esquerda |
. |
Esquerda |
f(x) |
Esquerda |
f<types> |
Esquerda |
F# oferece suporte à sobrecarga de operador personalizado. Isso significa que você pode definir seus próprio operadores. Na tabela anterior, op pode ser qualquer sequência (possivelmente vazia) válida de caracteres de operador, internos ou definidos pelo usuário. Dessa forma, é possível usar esta tabela para determinar qual sequência de caracteres usar para que um operador personalizado atinja o nível desejado de precedência. Os caracteres . à esquerda são ignorados quando o compilador determina a precedência.