否定变量快捷方式

本文关键字:快捷方式 变量 | 更新日期: 2023-09-27 18:30:00

这可能是一个微不足道的问题,但我不太容易找到。

有一些像这样的快捷方式

i = i + 1;
i++;
i = i+20;
i += 20;

但是,有什么东西可以否定一个变量吗?

MyClass.MyVeryLongSubClass.MoreStuff.MyBooleanHere = !MyClass.MyVeryLongSubClass.MoreStuff.MyBooleanHere;

否定变量快捷方式

类似于:

x ^= true;

它有点晦涩,这就是为什么人们通常不使用它的原因。

一个纯数字(而不是模糊的)解决方案是:

x *= -1;

更新

还要注意,赋值操作会产生一个值,并且可以在表达式中使用。

而不是

x = -x;
y = 100 * x;

你可以写

y = 100 * (x = -x);

甚至

y = 100 * (x *= -1);

但我更喜欢第一个版本。第二个和第三个不容易理解。