检查变量是否为整数的最佳方法

时间:2015-08-11 09:49:48

标签: c#

我需要检查变量是否是整数,并且我有很多简单的解决方案。

first one

  

if(floor(foobar)== foobar)

other one

  

if(d%1 == 0)

另一个是将此数字转换为字符串并用点(。)分割,并检查第二个数字是" 00"

  。

d.toString()分割('')[1 /] ==" 00"

但我认为这不是最佳做法。

很多这种方式,我想要一个所有人都能接受的标准解决方案。

3 个答案:

答案 0 :(得分:6)

我可能会选择

(d % 1) < epsilon

来自链接问题中的评论主题。它比你的两个例子都慢,所以你每秒只能做几百万次而不是每秒几百万次。在正面,它可以很好地处理浮点漂移和最小值和最大值

答案 1 :(得分:0)

在C#中,您可以使用内置函数int.TryParse()

int x;
bool result= int.TryParse(integerNumber.ToString(), out x);

如果结果为true,则为整数,否则为非。

答案 2 :(得分:-1)

IMO,(int)d == d在可读性方面是最好的。

但是,我不知道执行时间。