我有一个十进制变量,如果 bool 变量为真,我想取反。谁能想到比这更优雅的方法:
decimal amount = 500m;
bool negate = true;
amount *= (negate ? -1 : 1);
我在考虑按位运算符或严格的数学实现。
最佳答案
就我个人而言,我只会使用 if 语句,因为我觉得它的意图最明确:
decimal amount = 500m;
bool negate = true;
// ...
if (negate)
amount *= -1;
这真的不是任何额外的输入(它实际上更短!),而且在我看来更清晰。
关于c# - 基于 bool 值取反数值的优雅方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6902103/