A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 孙亚雄 中级黑马   /  2012-8-18 19:41  /  2351 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

两者有什么区别呢,谢谢了

评分

参与人数 1技术分 +1 收起 理由
郑文 + 1

查看全部评分

6 个回复

倒序浏览
1.int.Parse(string) 是把string转换成int,char,double等类型,即 *.parse(string),括号中一定是string类型
2.Convert 提供多种类型的转换,即Convert.*(),包括string类型

评分

参与人数 1技术分 +1 收起 理由
郑文 + 1

查看全部评分

回复 使用道具 举报
1,int.Parse(string)只能转换string类型的参数,而Convert.ToInt32()除了能转换string类型的参数还能转化其他类型的参数。
2. 当出现null值时:Convert.ToInt32(null)会返回0,不会产生异常;但int.Parse(null)则会报错产生异常。

评分

参与人数 1技术分 +1 收起 理由
郑文 + 1

查看全部评分

回复 使用道具 举报
1,Convert.ToInt32()被重写19次,可以满足不同的参数需要
       int.Parse()被重写4次,只能转化string
2,参数为null时
             Convert.ToInt32()返回0
             int.Parse()ArgumentNullException.Value cannot be null.Parameter name: String报异常

评分

参与人数 1技术分 +1 收起 理由
郑文 + 1

查看全部评分

回复 使用道具 举报
一、   int.Parse适合将string类类型转换成int类型,如int.Parse(session["shuzi"].ToString())。
         convert 适合将object类类型转换成int类型,如Convert.ToInt32(session["shuzi"]);
二、  这两个方法的最大不同是它们对null值的处理方法:
        Convert.ToInt32(null)会返回0而不会产生任何异常,但int.Parse(null)则会产生异常。

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
其实个人认为最明显,最突出的不同就是,Convert在转换出现问题时,不会出现异常,而parse会出现异常……
回复 使用道具 举报
许庭洲 黑马帝 2012-8-20 13:05:41
7#
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);   //正确

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马