gpt4 book ai didi

c# - 将一个数字的符号赋予另一个数字?

转载 作者:太空宇宙 更新时间:2023-11-03 17:48:06 25 4
gpt4 key购买 nike

我正在寻找一种简洁的方法来获取数字的符号(正或负),并将其传递给另一个数字。

例如:

我们有两个数字,第一个是整数 1,第二个直到执行时才知道。
如果未知数小于0,我们的数就变成-1。
如果未知数大于或等于 0,则我们的数字变为 1。

如果我们的未知数是 X:


enter image description here

作为代码:

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 语句或三元运算符。我想要一种数学方法。

编辑:

我对三元运算符没有反感。但是,我正在处理的代码库有一套代码准则,不允许使用三元运算符,因为它们会使代码变得更复杂(我知道我知道..我没有制定这条规则)。

不过,我相信我会在下一次团队 session 上提出这个问题及其答案,这样我就可以证明我认为三元运算符是多么必要。

最佳答案

var after = (X < 0) ? -1 : 1;

这比一个师便宜,也更清楚你的意图

关于c# - 将一个数字的符号赋予另一个数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54243052/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com