注册 登录
编程论坛 C# 论坛

判断一个数字是否为整数,总是出错,求指出

ad7870 发布于 2013-11-20 23:08, 838 次点击
int Number;
                Number = int.Parse(a.Text);


                if (Number == (int)Number)

                    b.Text = "该数字为整数";
                else
                    b.Text = "该数字不是整数";



if (Number == (int)Number) 这里出错了,,,,不懂
7 回复
#2
习惯被动2013-11-21 09:20
int.Parse()在把字符串转换为数字时若转换失败时会抛出异常的。你可以用Convert.ToInt32()这个方法。不过Convert.ToInt32()这个方法在判断带小数点的字符串时,仍然能够转换成功,只是结果为四舍五入后的数字。如果a.Text中还有可能含有字母的话,建议你用这个方法
string str=a.Text;
foreach(char chr in str)
{
   if( !char.IsDigit(chr))
   {
        MessageBox.Show("不是整数");
        break;
    }
}
#3
qw11617485792013-11-21 09:23
int Number;
Number = int.Parse(a.Text);
这句话你已经将Number定义为了int类型了还比较什么
#4
cppcui2013-11-21 21:00
回复 楼主 ad7870
int Number;

                if (int.TryParse(a.Text,out Number))

                    b.Text = "该数字为整数";
                else
                    b.Text = "该数字不是整数";
#5
ad78702013-11-27 21:35
回复 4楼 cppcui
输入小数还不能判断,问题不大,自己看看吧,谢谢啦
#6
ad78702013-11-27 21:35
回复 2楼 习惯被动
嘿嘿,解决,不过不是很理解,刚刚学.....
#7
ad78702013-11-27 21:36
回复 6楼 ad7870
谢谢啦
#8
爱飞sky2013-12-19 04:14
int 形式的本来就只可以运行整数运算, 若是小数,则程序不会运行

1