检查两个数字之间是否存在值(浮点数)c#

时间:2017-03-20 14:38:06

标签: c# linq

我看到Enumerable.Range(int x,int y).contains()用于检查两个给定值之间是否存在值。但这只适用于整数。

如何检查浮点值 - 所有x,y和结果都是浮点值。

2 个答案:

答案 0 :(得分:0)

Enumerable.Range方法在指定范围内生成一系列整数。因此,如果您调用Enumerable.Range(1, 10),结果将是以1开头的10个整数的列表。

如果您的目的只是检查两个给定值之间是否存在值,您可以这样做:

public static bool Between(float number, float min, float max)
{
    return number >= min && number <= max;
}

答案 1 :(得分:-1)

编辑:如果你真的想要一些奇怪的原因,那就试试

...Range(BitConverter.ToUInt32(BitConverter.GetBytes(x), 0), Bit...(y-x+1)).contains(Bit...(a));

这显然不起作用,但如果你真的想要,你可以按摩它到工作解决方案。显然不要这样做。

以下原帖:

哼哼我不明白你要检查那样的整数。

如果要检查2个整数之间是否存在任何值,请减去它们,如果abs(answer)为2或更大,则它们之间至少有1个。如果要检查整数是否在2个整数之间,请执行x<a && a<y

对于浮点数,如果要检查是否存在任何值,请检查它们的二进制表示并减去它们。如果要检查float是否在2个浮点数之间,请执行相同的x<a && a<y