检查C#
中某个给定类型的对象是否为:
if(myObj is MyClass)
{
//....
}
检查某个类型是否:
if(!(myObj is MyClass))
{
//....
}
是否有更可读的方式来表达相同的逻辑?
例如,如果我能写这篇文章就会更容易阅读。
if(myObj is not MyClass)
{
//....
}
答案 0 :(得分:6)
您可以尝试使用这样的扩展方法,只是为了让它更具可读性:
public static class ObjectExtension
{
public static bool IsNot<T>(this object o)
{
return !(o is T);
}
}
//Use it
if(myObj.IsNot<MyClass>()){
//...
}
答案 1 :(得分:4)
你可以采用相同的方法,使其更加冗长:
If (myObj is MyClass == false) ;