是否存在“;以及分配运算符“;对于&&;和缩写

本文关键字:amp 对于 缩写 分配 存在 是否 运算符 | 更新日期: 2023-09-27 18:23:44

要添加一个值并将其分配回自己,我会这样做:

x = x + y;

为了简化,我可以使用这样的添加赋值运算符:

x += y;

有这样的缩写吗&和||运算符?:

x = x && y;

我尝试了下面的,结果与上面不一样:

x &= y;

是否存在“;以及分配运算符“;对于&&;和缩写

您可以在这里看到C#运算符的列表。

x&=y–AND赋值。将y的值与x的值进行AND运算,存储x中的结果,并返回新值。

x|=y–OR赋值。将y的值与x的值进行OR运算,存储x中的结果,并返回新值。

当你说"结果不一样"时,你能提供你正在测试的x和y的示例值吗
我认为你所观察到的是逻辑/位AND/OR(&/|)和条件AND/OR之间的区别。如果不需要计算表达式的值,后者将不会计算y。如果y的求值有副作用,您会注意到按位运算符和条件运算符之间的差异。

不,没有,因为它没有太多意义。

根据MSDN,C#中只有以下shortand操作符:

x += y – increment
x -= y – decrement    
x *= y – multiplication assignment
x /= y – division assignment
x %= y – modulus assignment
x &= y – AND assignment
x |= y – OR assignment
x ^= y – XOR assignment
x <<= y – left-shift assignment
x >>= y – right-shift assignment