DotNet · 2022年5月2日

vb.net中的异或运算符Xor

xor 在对外运算时,如果要实现清除某位数据的效果时,要首先检查确保此位数据是1,如果是0的话,反而起到反效果,变成从0到有
如:
if (.fDensityMeasureType And EMDensityMeasureType.HIMS)>0) then

    .fDensityMeasureType = .fDensityMeasureType xor EMDensityMeasureType.HIMS
end if
如果要省略检查步骤,则可以使用如下方式,同时,这种方式,就算要移除的是复合值,也可以正常移除
.fDensityMeasureType = .fDensityMeasureType And (Not EMDensityMeasureType.HIMS)


对两个 Boolean 表达式执行逻辑异或运算,或对两个数值表达式执行按位异或运算。
Boolean 比较的结果是两个表达式的逻辑异或。对于按位运算,结果是对两个数值表达式执行按位异或产生的数值。

对于 Boolean 比较,如果有一个且仅有一个表达式计算为 True,则 result
True。否则,resultFalse。如果任一表达式被声明为 Nothing,则该表达式被计算为
False

如果 expression1 并且 expression2 result
True True False
True False True
False True True
False False False

对于数值表达式,Xor 运算符作为按位运算符执行。两个表达式使用“异或”逻辑进行按位比较形成的结果如下表所示:

如果 expression1 中的位为 并且 expression2 中的位为 result
0 0 0
0 1 1
1 0 1
1 1 0

注意   由于逻辑/位运算符的优先级低于其他算术和关系运算符的优先级,所以应该将任何按位运算括在括号中以确保准确执行。

最新电影,电视剧,尽在午夜剧场

电影电视剧午夜不寂寞