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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 董华阳 于 2013-3-11 12:27 编辑

请问把整数型的字符串转换为int,(int),Convert.ToInt32(),int.Parse,int.TryParse()这几种方式有何区别及具体用法?

评分

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

查看全部评分

4 个回复

正序浏览
谢谢各位 !
回复 使用道具 举报
(int)用于数值类型显示转换为int型,即表示范围大于int的类型的转换为int型。
例:double a=20;
    int b=int(a);
int.Parse()是一种类容转换;表示将数字内容的字符串转为int类型。
如果字符串为空,则抛出ArgumentNullException异常;
如果字符串内容不是数字,则抛出FormatException异常;
如果字符串内容所表示数字超出int类型可表示的范围,则抛出OverflowException异常;

int.TryParse 与 int.Parse 类似,但它不会产生异常,转换成功返回 true,转换失败返回 false。最后一个参数为输出值,如果转换失败,输出值为 0

Convert.ToInt32()是一种内容转换成int型,但并不局限于字符串类型。

评分

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

查看全部评分

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



评分

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

查看全部评分

回复 使用道具 举报
字符串是无法通过(int)进行强制转换的,(int)只能用于数值类型的数据之间的转换。Convert.ToInt32()和int.Parse()两个方法其实是一样的,将字符串转换为int类型的数据,但是如果转换不成功则会报错,所以一般需要进行转换失败的处理。int.TryParse(“待转换的字符串”,out int a)返回值是一个bool类型,判断是否转换成功,如果成功返回true,并将转换的值存于由out修饰的int类型变量中。

点评

正解  发表于 2013-3-7 13:50

评分

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

查看全部评分

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