你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
比较表达式
相等比较
相等比较(==
)和 不等比较(!=
)目前仅限于以下数据类型:Int
、BigInt
、Double
、String
、Bool
、Result
、Pauli
和 Qubit
。 目前不支持 struct
类型和可调用对象的相等比较。
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
被视为相等。 不支持开放式范围的相等比较。
定量比较
运算符 小于(<
),小于或等于(<=
),大于(>
),大于或等于(>=
)定义定量比较。 它们只能应用于支持此类比较的数据类型,即也可以支持 算术表达式的相同数据类型。