0

可能重复:
直接转换与“as”运算符?

首先,如果这是重复的,我很抱歉,我曾尝试用谷歌搜索,但这不是一个简单的“谷歌做”!

以下代码片段之间是否存在差异(功能、性能等):

MyClass myClass = (MyClass)someObject;

MyClass myClass = someObject as MyClass;
4

2 回答 2

9

是,有一点不同!

如果转换失败, as运算符会将变量设置为null

显式转换会引发异常

于 2012-09-13T11:31:50.807 回答
1

是的,如果第一个变体不能将“someObject”转换为“MyClass”,它会抛出异常。而第二个将只返回null。

于 2012-09-13T11:32:27.003 回答