我正在寻找一种简洁的方法来取一个数字的符号(积极性或消极性),并将其传递给另一个数字.
我们给出两个数字,第一个是整数1,第二个是未知的,直到执行时间.
如果未知数小于0,则我们的数字变为-1.
如果未知数大于或等于0,则我们的数字变为1.
int before = AnyNonzeroInt(); //for this example we will choose 1.
int X = rand(Int32.Min, Int32.Max);
int after = ...
我个人使用C#4.5,但我相信一个好的解决方案是与语言无关的.
我可以想到几种方法,但都涉及if-else-case语句或三元运算符.我想要一种数学方法来做到这一点.
我对三元运营商没有厌恶.但是,我正在处理的代码库有一组代码指南,不允许使用三元运算符,因为它们会使代码变得更复杂(我知道我知道......我没有制定这个规则).
但是,我相信我会接受这个问题,以及它对下一次团队会议的回答,这样我就可以证明我认为三元运营商是多么必要.
| 归档时间: | 
 | 
| 查看次数: | 82 次 | 
| 最近记录: |