【发布时间】:2008-09-26 22:00:38
【问题描述】:
此代码有效(C# 3)
double d;
if(d == (double)(int)d) ...;
- 有没有更好的方法来做到这一点?
- 出于无关的原因,我想避免双重转换;除了这个还有什么好的方法吗? (即使它们没有那么好)
注意: 有几个人指出了(重要的)一点,即 == 在重定浮点时经常会出现问题。在这种情况下,我希望值在 0 到几百之间,并且它们应该是整数(非整数是错误),所以如果这些点“不应该”对我来说是个问题。
【问题讨论】:
标签: c# floating-point numerical