(int),Convert.ToInt32(),Int32.Parse(),Int32.TryParse()的用法总结

本文详细介绍了C#中整型的强制转换与隐式转换方法,包括使用(int)直接转换、Convert.ToInt32()、Int32.Parse()与Int32.TryParse()方法,并解释了它们的使用场景与注意事项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 (int) 

强制转型为整型。

当将long,float,double,decimal等类型转换成int类型时可采用这种方式。

 

double dblNum = 20;
int intDblNum = (int)dblNum;

例子中将double型的dblNum显式转换为int型的intDblNum。

 

 

2 Convert.ToInt32()

 

string strNum = "20";
int intStrNum = (int)strNum;

在VS中输入上面的代码,会提示:

 

无法将类型“string”转换为“int”。

 

这时,可以使用Convert.ToInt32()方法来完成这个转换。

 

int intStrNum = Convert.ToInt32(strNum);

 

 

当传入的字符串(含空串"")无法转换成int型时,会抛出异常,异常信息为:

输入的字符串格式不正确。

 

string strNotNum = "2x";
int intStrNotNum = Convert.ToInt32(strNotNum);

 

 

 

当传入参数为null时,Convert.ToInt32()方法会返回0。

 

int intStrNotNum = Convert.ToInt16(null);//返回0,不抛出异常

 

 

 

Convert.ToInt32()方法 可以转换的类型很多,详细信息请参考:

http://msdn.microsoft.com/zh-cn/library/system.convert.aspx

 

3 Int32.Parse()

Int32.Parse()方法同样可以将数值型字符串转换成int。

 

string strNum = "20";
int intStrNum = int.Parse(strNum);


当传入的字符串(含空串"")无法转换成int型时,会抛出异常,异常信息为:

 

输入的字符串格式不正确。

 

string strNotNum = "2x";
int intStrNotNum = int.Parse(strNotNum);

 

当传入参数为null时,会抛出异常,异常信息为:

参数值不能为null。

 

int intStrNotNum = int.Parse(null);


4 Int32.TryParse()

 

Int32.TryParse()方法与Int32.Parse()方法的区别是:如果输入字符串格式不满足转换的要求,Parse方法会抛出异常;而TryParse方法则不会引发异常,它会返回false表示转换无法进行,同时会将result置为0。

 

string strNum = "20";
int intStrNum = 0; 
int result = 0;
if (int.TryParse(strNum, out intStrNum))
{
     result = intStrNum;
}
string strNotNum = "2x";
int intStrNotNum = 0;
int result = 0;
if (int.TryParse(strNotNum, out intStrNotNum))
{
       result = intStrNotNum;
}

当传入参数为空串””或者null会返回false。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值