gpt4 book ai didi

c# - 很好地处理空值的语法

转载 作者:行者123 更新时间:2023-11-30 14:58:38 26 4
gpt4 key购买 nike

<分区>

当返回一个可能为 null 但不可以的对象时,我通常会使用(它的专有名称是什么?!)非常惊讶的运算符:?? 之类的所以。

return hazaa ?? new Hazaa();

当我返回对象的一个​​属性(如果它存在的话)和一些默认值时,问题就出现了。并不是说要对父对象进行空性检查。今天我确实喜欢这样。

return hazaa != null
? hazaa.Property
: String.Empty;

我认为它不是最佳语法,我希望它更紧凑(但仍然很容易理解,因为该属性已正确实现),就像这样。

return (hazaa ?? new Hazaa()).Property;

但是,我不喜欢括号,我正在寻找一种省略它们但仍然紧凑的语法。 C#中有这样的东西吗?我正在寻找这样的东西。

return hazaa ?.Property :String.Empty;

然后,转念一想,类似这样的事情。

return hazaa ?.Property :.BackUpProperty;

我可以创建自己的属性层来提供此类行为,但这只是隐藏了问题。 :)

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com