• 全部
  • C#综合技术
  • C#互联网桌面应用
  • AppLauncher
  • WinForm&WPF
  • C#开发新技术
  • 问答

求教:C# 中 double 类型能否做零值相等比较

wt_sanlian 2011-03-22 02:06:07

bool IsZero(double v)
{
if( v == 0 )
{
return true;
}
else
{
return false;
}

}

上面的应用安全吗?
...全文
360 点赞 收藏 6
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
ycproc 2011-03-22
可以的
0.00 和 0 没区别吧
回复
漂流小岛 2011-03-22
如果你觉得有问题,可以先转换下类型。Convert.ToInt32(Math.Round(k, 0))或者把0Convert.ToDouble
回复
greenaaa 2011-03-22
是可以的吧
回复
sakiwer 2011-03-22
应该没问题。
回复
wt_sanlian 2011-03-22
double k = 0;
if (k == 0)
{
MessageBox.Show("k is zero");
}
else
{
MessageBox.Show("k is none zero");
}
我用vs2005 做了实验,但出来的结果是正确的
回复
出来的都是false...

double之间的比较都是比较差值的绝对值是否在一定范围内,如果是,就认为相等
回复
发帖
C#
创建于2007-09-28

10.5w+

社区成员

.NET技术 C#
申请成为版主
帖子事件
创建了帖子
2011-03-22 02:06
社区公告

让您成为最强悍的C#开发者