黑马程序员技术交流社区

标题: int.Parse(string) 和ConvertToInt32(string) [打印本页]

作者: 孙亚雄    时间: 2012-8-18 19:41
标题: int.Parse(string) 和ConvertToInt32(string)
两者有什么区别呢,谢谢了
作者: 董蒙蒙    时间: 2012-8-18 21:00
1.int.Parse(string) 是把string转换成int,char,double等类型,即 *.parse(string),括号中一定是string类型
2.Convert 提供多种类型的转换,即Convert.*(),包括string类型
作者: 申延超    时间: 2012-8-18 21:08
1,int.Parse(string)只能转换string类型的参数,而Convert.ToInt32()除了能转换string类型的参数还能转化其他类型的参数。
2. 当出现null值时:Convert.ToInt32(null)会返回0,不会产生异常;但int.Parse(null)则会报错产生异常。
作者: 杨正    时间: 2012-8-18 23:02
1,Convert.ToInt32()被重写19次,可以满足不同的参数需要
       int.Parse()被重写4次,只能转化string
2,参数为null时
             Convert.ToInt32()返回0
             int.Parse()ArgumentNullException.Value cannot be null.Parameter name: String报异常
作者: 王龙喜    时间: 2012-8-19 11:41
一、   int.Parse适合将string类类型转换成int类型,如int.Parse(session["shuzi"].ToString())。
         convert 适合将object类类型转换成int类型,如Convert.ToInt32(session["shuzi"]);
二、  这两个方法的最大不同是它们对null值的处理方法:
        Convert.ToInt32(null)会返回0而不会产生任何异常,但int.Parse(null)则会产生异常。

作者: 冯雅伦    时间: 2012-8-20 11:45
其实个人认为最明显,最突出的不同就是,Convert在转换出现问题时,不会出现异常,而parse会出现异常……
作者: 许庭洲    时间: 2012-8-20 13:05
1,Convert.ToInt32(null)会返回0而不会产生任何异常;
2,int.Parse(null)则会产生异常。
3,Convert.ToInt32(3.5);//转化为4
4,string stringType = "12345";
     int intType = (int)stringType;                  //错误,string 类型不能直接转换为 int  类型
     int intType = Int32.Parse(stringType);   //正确




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2