以Int为例,我们日常有3种方法可以进行转换:
- Convert.ToInt16()、Convert.ToInt32()、Convert.ToInt64()
- int.Parse()、Int16.Parse()、Int32.Parse()、Int64.Parse()
- int.TryParse()、Int16.TryParse()、Int32.TryParse()、Int64.TryParse()
相应的:
- 参数为null返回0;参数为字符串返回异常
- 参数为null、字符串均返回异常
- 执行成功返回true,输出转换成功的值;执行失败返回0
那么,TryParse该如何使用呢??
首先
举一个简单的例子说明:
//语法:int.TryParse(str, out res)
int res = 1;
int i = 3;
string str = "";
if(int.TryParse(str, out res)){
//因为str是字符串类型,所以此次转换肯定是失败的,失败返回false
//所以不会进来循环内部
//由于执行失败,所以res的值是0
}
if(int.TryParse(i, out res)){
//因为i是int类型,所以此次转换是成功的,成功返回true
//所以会进入到循环内部
//由于执行成功,所以res的值是i,也就是3
}
总结:TryParse可以为我们的程序减少报错概率,帮助我们准确的完成业务需求,也可以用来判断用户输入的时间、金额、数量等是不是符合规则