如何将对象类型转换为不同类型?
public T Get<T>(T t)
{
if (t is TypeA)
{
TypeA a = (TypeA)t; //error
}
}
Run Code Online (Sandbox Code Playgroud)
一种方法是使用as
public T Get<T>(T t)
{
if(t is TypeA) {
TypeA a = t as TypeA;
}
}
Run Code Online (Sandbox Code Playgroud)
另一种是使用Convert
public T Get<T>(T t)
{
if(t is TypeA) {
TypeA a = (TypeA) Convert.ChangeType(t, typeof(TypeA));
}
}
Run Code Online (Sandbox Code Playgroud)