符號和運算子參考 (F#)
本主題包含 F# 語言中使用的符號與運算子資料表。
符號與運算子資料表
下表說明 F# 語言中使用的符號,提供可提供詳細資訊之主題的連結,並提供一些符號用法的簡短說明。 符號會依據 ASCII 字元集的順序加以排序。
符號或運算子 |
連結 |
描述 |
---|---|---|
! |
|
|
!= |
不適用。 |
|
" |
|
|
""" |
分隔逐字文字字串。 有別於 @"...",因為您可以在字串中使用單引號來表示引號字元。 |
|
# |
|
|
$ |
沒有可用的詳細資訊。 |
|
% |
|
|
%% |
|
|
%? |
|
|
& |
|
|
&& |
|
|
&&& |
|
|
' |
|
|
``...`` |
沒有可用的詳細資訊。 |
|
( ) |
|
|
(...) |
|
|
(*...*) |
|
|
(|...|) |
|
|
* |
|
|
*? |
|
|
** |
|
|
+ |
|
|
+? |
|
|
, |
|
|
- |
|
|
- |
|
|
-> |
|
|
. |
|
|
.. |
|
|
.. .. |
|
|
.[...] |
|
|
/ |
|
|
/? |
|
|
// |
|
|
/// |
|
|
: |
|
|
:: |
|
|
:= |
|
|
:> |
|
|
:? |
|
|
:?> |
|
|
; |
|
|
< |
|
|
<? |
當右側是可為 null 的類型時,計算小於運算。 |
|
<< |
|
|
<<< |
|
|
<- |
|
|
<...> |
|
|
<> |
|
|
<>? |
|
|
<= |
|
|
<=? |
|
|
<| |
|
|
<|| |
|
|
<||| |
|
|
<@...@> |
|
|
<@@...@@> |
|
|
= |
|
|
=? |
|
|
== |
不適用。 |
|
> |
|
|
>? |
|
|
>> |
|
|
>>> |
|
|
>= |
|
|
>=? |
|
|
? |
|
|
? ... <- ... |
沒有可用的詳細資訊。 |
|
?>=, ?>, ?<=, ?<, ?=, ?<>, ?+, ?-, ?*, ?/ |
|
|
>=?, >?, <=?, <?, =?, <>?, +?, -?, *?, /? |
|
|
?>=?, ?>?, ?<=?, ?<?, ?=?, ?<>?, ?+?, ?-?, ?*?, ?/? |
|
|
@ |
|
|
[...] |
|
|
[|...|] |
|
|
[<...>] |
|
|
\ |
|
|
^ |
|
|
^^^ |
|
|
_ |
|
|
` |
|
|
{...} |
|
|
| |
|
|
|| |
|
|
||| |
|
|
|> |
|
|
||> |
|
|
|||> |
|
|
~~ |
|
|
~~~ |
|
|
~- |
|
|
~+ |
|
運算子優先順序
下表顯示 F# 語言中運算子和其他運算式關鍵字的優先順序,順序從最低的優先順序到最高的優先順序。 同時列出關聯性 (如果適用的話)。
運算子 |
順序關聯性 |
---|---|
as |
右 |
when |
右 |
| (管道) |
左 |
; |
右 |
let |
Nonassociative |
function, fun, match, try |
Nonassociative |
if |
Nonassociative |
-> |
右 |
:= |
右 |
, |
Nonassociative |
or, || |
左 |
&, && |
左 |
<op, >op, =, |op, &op |
左 |
&&&, |||, ^^^, ~~~, <<<, >>> |
左 |
^op |
右 |
:: |
右 |
:?>, :? |
Nonassociative |
-op, +op, (binary) |
左 |
*op, /op, %op |
左 |
**op |
右 |
f x (函式應用程式) |
左 |
| (模式比對) |
右 |
前置運算子 (+op、-op、%、%%、&、&&、!op、~op) |
左 |
. |
左 |
f(x) |
左 |
f<types> |
左 |
F# 支援自訂運算子多載。 這表示您可以定義自己的運算子。 在上表中,op 可以是任何有效的 (可能是空的) 運算子字元序列,即內建或使用者定義的序列。 因此,您可以使用此表格來判斷要對自訂運算子使用什麼字元序列,以達到您想要的優先順序等級。 前置 . 字元在編譯器判斷優先順序時,會予以忽略。