(int)、int.Parse()、int.TryParse()、Convert.ToInt32()区别
程序员文章站
2022-06-22 11:02:12
请看代码: //1、null。 //int i1 = (int)null;//编译时报错:无法将“null”转换为“int”,因为后者是不可以为“null”的值类型。 //int i2 = int.Parse(null);//执行时报错:“System.ArgumentNullException”, ......
请看代码:
//1、null。 //int i1 = (int)null;//编译时报错:无法将“null”转换为“int”,因为后者是不可以为“null”的值类型。 //int i2 = int.parse(null);//执行时报错:“system.argumentnullexception”,值不能为 null。 //int i3; //bool b1 = int.tryparse(null, out i3);//b1 = false,i3 = 0。 //int i4 = convert.toint32(null);//i4 = 0。 //2、""。 //string s1 = ""; //int i1 = (int)s1;//编译时报错:无法将“string”装换为“int”。 //int i2 = int.parse(s1);//执行时报错:“system.formatexception”,输入字符串的格式不正确。 //int i3; //bool b1 = int.tryparse(s1, out i3);//b1 = false,i3 = 0。 //int i4 = convert.toint32(s1);//执行时报错:“system.formatexception”,输入字符串的格式不正确。 //3、小数。 //double d1 = 1.2d; //double d2 = 1.5d; //double d3 = 1.8d;
//int i1 = (int)d1;//i1 = 1\1\1。 //int i2 = int.parse(d1.tostring());//执行时报错:“system.formatexception”,输入字符串的格式不正确。 //int i3; //bool b1 = int.tryparse(d1.tostring(), out i3);//b1 = false,i3 = 0。 //int i4 = convert.toint32(d3);//i4 = 1\2\2 //4、整数。 //byte b1 = 10; //int i1 = (int)b1;//i1 = 10。 //int i2 = int.parse(b1.tostring());//i2 = 10。 //int i3; //bool b2 = int.tryparse(b1.tostring(), out i3);//b2 = true,i3 = 10。 //int i4 = convert.toint32(b1);//i4 = 10。
总结如下:
(int)数字类型:整型取整,小数取整(不存在四舍五入),其他类型异常。
int.parse(整型.tostring()):整型.tostring()取整,其他类型异常。
int.tryparse(整型.tostring(), out int i):整型.tostring()取整,返回true,其他类型返回0,返回false。
convert.toint32(多种类型):数字类型.tostring()取整,null取0,其他类型异常。其中,如果值是两个数字中间的小数,返回二者中的偶数,其余正常四舍五入,比如3.4返回3,3.5返回4,3.6返回4。convert.toint32()首先判断值是否为null,如果值为null,返回0。
以上是我对(int)、int.parse()、int.tryparse()、convert.toint32()的理解,希望可以给需要的朋友带来帮助。
上一篇: JS-对象常用方法整理
下一篇: 千里跃进大别山的意义是什么?怎么评价它?
推荐阅读
-
Convert.ToInt32与Int32.Parse区别及Int32.TryParse
-
【转载】C#中int.TryParse方法和int.Parse方法的异同之处
-
(int)、int.Parse()、int.TryParse()、Convert.ToInt32()区别
-
C#中(int)、int.Parse()、int.TryParse()和Convert.ToInt32()的区别
-
C#中(int)、int.Parse()、int.TryParse()和Convert.ToInt32()的区别
-
Convert.ToInt32与Int32.Parse区别及Int32.TryParse
-
【转载】C#中int.TryParse方法和int.Parse方法的异同之处
-
(int)、int.Parse()、int.TryParse()、Convert.ToInt32()区别