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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 黑马_黄开潮 于 2012-12-14 17:39 编辑

Convert.ToInt32、int.Parse、int.TryParse、(int) 四者都可以解释为将类型转换为 int,那它们的区别是什么呢?

评分

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

查看全部评分

4 个回复

倒序浏览
int.parse()只能转换string数据。而convert可以转换object也就是所有类型。对于null,用int.parse()就会异常,convert转换为0。此外convert的可移植性好,性能更高。

评分

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

查看全部评分

回复 使用道具 举报
1.Convert.ToInt32的参数比较多,Int.Parse只能转换string类型的.
2.Parse就是把String转换成int,char,double....等,也就是*.Parse(string) 括号中的一定要是string.
3Convert可以提供多种类型的转换,也就是Convert.*()括号中可以为很多种类型(包括string).

评分

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

查看全部评分

回复 使用道具 举报
Convert.ToInt32可以转换所有类型 转换为整数
int.parse()只能转换string数据
int.tryparse()可以有2个返回值,例如 bool re=int.tryparse(string s,out int s)
(int)只能转换数据类型相兼容的,比如double  类型

评分

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

查看全部评分

回复 使用道具 举报
Convert.ToInt32、int.Parse差不多,用法也差不多。int.tryparse基本上可以说是convert.toint32和try-catch的合体。int.tryparse会返回一个bool类型的变量用来判断是否转换成功。

评分

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

查看全部评分

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