什么是更快
AnswerClass ansClass = obj as AnswerClass;
if(ansClass != null){
//use ansClass directly
}
Run Code Online (Sandbox Code Playgroud)
要么
if(obj is AnswerClass ){
AnswerClass ansClass = (AnswerClass) obj;
//use ansClass now
}
Run Code Online (Sandbox Code Playgroud)
在C#.net中.
我环顾四周但找不到任何可以解答的问题,这里有人知道吗?
我已编辑以更好地解释我的问题,它是比较'as'然后null检查,然后使用,'is'然后直接演员?
该as运营商不与值类型(工作structS),所以如果你有
struct SomeStruct { }
object obj = new SomeStruct();
Run Code Online (Sandbox Code Playgroud)
那么唯一的选择是找出类型和取消值的值
if (obj is SomeStruct)
{
SomeStruct val = (SomeStruct)obj;
Run Code Online (Sandbox Code Playgroud)