我如何检查一个数字是正的或负的c# ?


当前回答

    public static bool IsPositive<T>(T value)
        where T : struct, IComparable<T>
    {
        return value.CompareTo(default(T)) > 0;
    }

其他回答

bool positive = number > 0;
bool negative = number < 0;

你们这些年轻人,还有你们喜欢的"不到"标志。

在我的时代,我们必须使用Math.abs(num) != num //number是负的!

的数学。符号法是一种方法。它将返回-1表示负数,1表示正数,0表示等于0(即0没有符号)。如果双精度变量和单精度变量等于NaN,则会引发异常(ArithmeticException)。

对于32位有符号整数,例如System。Int32,也就是c#中的int:

bool isNegative = (num & (1 << 31)) != 0;

当然没有人给出正确答案,

num != 0   // num is positive *or* negative!