C#中as 运算符的作用是什么?

匿名网友 匿名网友 发布于: 2015-08-30 00:00:00
阅读 108 收藏 0 点赞 0 评论 0

as 运算符用于执行引用类型的显式类型转换。 如果要转换的类型与指定类型兼容,转换就会成功;如果类型不兼容,则返回null。

表达式as 类型

as 运算符类似于类型转换,所不同的是,当转换失败时,as 运算符将返回null,而不是引发异常。

as的规则如下:

• 检查对象类型的兼容性,并返回结果,如果不兼容就返回null;

• 不会抛出异常;

• 如果结果判断为空,则强制执行类型转换将抛出NullReferenceException异常。

代码如下:

Student s1 = studentObj as Student; //如果CLR检测studentProgram引用对象类型不兼容目标类型,即不能进行强制类型转换,则返回一个null,永远不会抛出异常

评论列表
文章目录