在零合并算子中这个额外的问题是什么?
本文关键字:问题 问题是 是什么 合并 | 更新日期: 2023-09-27 18:03:49
我有这个条件:
if (dr_dados["DAT_SAIDA"] != null)
{
txtDataSaida.Text = "";
}
else
{
txtDataSaida.Text = dr_dados["DAT_SAIDA"].ToString();
}
我正在使用Jetbrain的ReSharper,它告诉我我可以转换成一个三元操作。
所以,它变成了:
txtDataSaida.Text = (dr_dados["DAT_SAIDA"] != null) ? dr_dados["DAT_SAIDA"].ToString() : "";
然后它告诉我,我可以转换成一个null合并操作,它给了我这个
txtDataSaida.Text = dr_dados["DAT_SAIDA"]?.ToString() ?? "";
我大概知道空合并操作是做什么的,但是有一些不同的东西,一些我以前没有见过的东西,我想知道它是什么。
这里的额外询问:
v
txtDataSaida.Text = dr_dados["DAT_SAIDA"]?.ToString() ?? "";
它是什么意思?
为空条件操作符。
用于在实际执行成员访问之前检查是否为空。如果您要访问的成员实际上是null
,则不会抛出异常,而是返回null
值。