类型转换

public class A : B
{
}
publuc class B
{
}

隐式转换

转换为基类型
A a = new B();
不发生数据丢失的值类型
int a = 1;
long b = a;

显式转换
转换为子类型
B b = (B) a;
如果失败返回InvalidCastException

As Is 运算符
is判断一个对象是否兼容于指定类型
A a = new A();
B b = new B();
bool flag1 = (b is A);//true
bool flag2 = (a is B);//false
如果该对象为null总是返回false

as工作方式与强制转换相同,只是在失败时不抛出异常,而是返回null

Posted in C#

发表回复

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据