使用“as”操作符的结果是什么?在空对象上

本文关键字:是什么 对象 结果是 结果 as 操作符 使用 | 更新日期: 2023-09-27 18:12:47

c#有as关键字,它可以将对象强制转换为其他东西,或者失败,如果它不起作用则返回null。

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

使用“as”操作符的结果是什么?在空对象上

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

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

例如:

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

为什么不试试呢?

你得到一个空值,没有例外。实际上,as的重点是永远不会抛出异常。