C# “使用”的结果是什么;“作为操作员”;在空对象上?

C# “使用”的结果是什么;“作为操作员”;在空对象上?,c#,C#,C#具有as关键字,该关键字可以将对象强制转换为其他对象,如果对象不工作,则会失败并返回null 如果我尝试转换的值已经为null,会发生什么?我是得到null还是抛出了一些异常?它将返回null。as操作符的目的是避免引发异常,根据: as运算符类似于强制转换操作。但是,如果转换 不可能,因为返回null而不是引发异常 例如: object o = null; // also try with a string type string result = o as string; Console

C#具有
as
关键字,该关键字可以将对象强制转换为其他对象,如果对象不工作,则会失败并返回null


如果我尝试转换的值已经为null,会发生什么?我是得到null还是抛出了一些异常?

它将返回null。
as
操作符的目的是避免引发异常,根据:

as运算符类似于强制转换操作。但是,如果转换 不可能,因为返回null而不是引发异常

例如:

object o = null; // also try with a string type
string result = o as string;
Console.WriteLine(result); // null

您得到一个空值,没有异常。实际上,
as
的要点是永远不要抛出异常