比較表達式
相等比較
==
() 相等比較和不相等!=
比較 () 目前僅限於下列數據類型:Int
、、、Double
Bool
String
BigInt
、、Result
、 Pauli
和 。Qubit
目前不支援使用者定義型別和可呼叫項的相等比較。
Qubit
類型值的相等比較會評估兩個運算式是否識別相同的量子位元。 中沒有量子狀態 Q#的概念;相等比較,特別是 不會 存取、測量或修改量子位的量子狀態。
值的相等比較 Double
可能會因為進位效果而造成誤導。
例如,下列比較會評估為 false
,因為四捨五入錯誤:49.0 * (1.0/49.0) == 1.0
。
陣列和元組的相等比較是由項目比較所支援,而且只有在所有巢狀類型都支援相等比較時,才支援。
支援封閉式範圍的相等比較,如果兩個範圍產生相同的整數序列,則會將兩個範圍視為相等。 例如,下列兩個範圍
let r1 = 0..2..5; // generates the sequence 0,2,4
let r2 = 0..2..4; // generates the sequence 0,2,4
視為相等。 不支持開放式範圍的相等比較。
量化比較
運算子 小於 () <
、 小於或等於<=
() 、 大於 () >
,以及 大於或等於 (>=
) 定義量化比較。 它們只能套用至支援這類比較的數據類型,也就是也可以支持 算術表達式的相同數據類型。