在访问成员之前检查对象是否为空,或者分配非空的替代对象。

我们使用的是.NET标准2.1 C# 8.0.我想找一个空凝聚操作符空条件操作符三元操作符的变体。

我得到的一个简化版的代码,它的工作原理是。

studentPhoneNumber = (student.PhoneNumber != null) ? student.PhoneNumber.Number : "None specified"

studentPhoneNumber 是一个字符串

PhoneNumber 本身就是一个类,如果学生还没有设置的话,它可以是空的。

我宁愿这样说:

studentPhoneNumber = student.PhoneNumber?.Number : "None specified"

但我试过的各种变体都没有用。

我知道Fowler的Null对象模式和Demeter法则,应用它们可以让这件事变得更简单,但这将是我们代码库的一个巨大变化。

目前,我只是在寻找某种操作符,让这个读起来更容易。

解决方案:

@Sajid 和 @UnholySheep 回答。

student.PhoneNumber?.Number ?? "None specified";

给TA打赏
共{{data.count}}人
人已打赏
未分类

如何在bash awk中对文本中的一列应用程序?

2022-9-7 23:06:20

未分类

将Laravel从5.2.45版本升级到7.0版本

2022-9-7 23:17:16

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索