黑马程序员技术交流社区

标题: as和tryParse [打印本页]

作者: 芦路    时间: 2013-10-23 18:53
标题: as和tryParse
本帖最后由 芦路 于 2013-10-24 08:15 编辑

都是尝试转换,什么时候用as 什么时候用tryparse


作者: 迷你卡卡    时间: 2013-10-23 19:04
代码说明:
Person p=new Chinese();
Chinese cn=p as Chinese();
Chinese cn=Chinese(p);
由于是在网吧就这么简单的写下吧,
第三行代码那种写法,如果转换不成功就会报异常,但是使用as进行类型转换,如果转换不成功,则不会报异常,返回一个null
TryParse主要是对数值类型转换
比如
int result;
bool b= int.TryParse("abc",out result);
TryParse方法返回值为bool值,并且会有一个out参数传出,如果转换不成功,则传出的这个参数为你定义这个参数的默认值,比如这里定义的result为int,则转换不成功,result=0;
希望能帮到你

作者: 黑色海    时间: 2013-10-23 19:08
区别:
as用于引用类型转换,转换失败会返回null
tryparse是尝试转换,返回的是布尔值
使用:
都可以用作if语句中的判断条件.
既需要判断是否转换成功,又需要在转换成功时输出转换后的值时用tryparse.
as我很少用,见到别人使用是在winform事件中写的类型转换,比如  button btn=sender as button;    我一般都用 button  btn=(button) sender;

有错误的地方欢迎指出!




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