Test if a floating point number is an integer

前端 未结 12 2367
醉酒成梦
醉酒成梦 2021-02-18 22:21

This code works (C# 3)

double d;
if(d == (double)(int)d) ...;
  1. Is there a better way to do this?
  2. For extraneous reasons I want to
12条回答
  •  情歌与酒
    2021-02-18 22:47

    Could you use this

        bool IsInt(double x)
        {
            try
            {
                int y = Int16.Parse(x.ToString());
                return true;
            }
            catch 
            {
                return false;
            }
        }
    

提交回复
热议问题