首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何判断小数/双精度数是否为整数?

如何判断小数/双精度数是否为整数?
EN

Stack Overflow用户
提问于 2010-05-02 05:25:25
回答 13查看 235K关注 0票数 261

如何判断十进制值或双精度值是否为整数?

例如:

代码语言:javascript
运行
复制
decimal d = 5.0; // Would be true
decimal f = 5.5; // Would be false

代码语言:javascript
运行
复制
double d = 5.0; // Would be true
double f = 5.5; // Would be false

我之所以想知道这一点,是因为我可以通过编程来确定是使用.ToString("N0")还是.ToString("N2")输出值。如果没有小数点的值,那么我不想显示它。

EN

Stack Overflow用户

发布于 2011-04-08 23:14:14

我遇到过类似的情况,但值是一个字符串。用户输入一个应该是美元金额的值,所以我想验证它是数字的,并且最多有两个小数位。

下面是我的代码,如果字符串"s“表示一个最多有两位小数的数字,则返回true,否则返回false。它避免了由于浮点值的不精确而导致的任何问题。

代码语言:javascript
运行
复制
try
{
    // must be numeric value
    double d = double.Parse(s);
    // max of two decimal places
    if (s.IndexOf(".") >= 0)
    {
        if (s.Length > s.IndexOf(".") + 3)
            return false;
    }
    return true;
catch
{
    return false;
}

我在http://progblog10.blogspot.com/2011/04/determining-whether-numeric-value-has.html上对此进行了更详细的讨论。

票数 0
EN
查看全部 13 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2751593

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档