csharp基础练习题:空条件运算符(C#6.0)【难度:1级】:
在C#6.0中有一个名为** Null-Conditional Operator ** 的新运算符?.
.它没什么革命性的 - 只是语法糖,但非常整洁.
用例
想象一下,你有一个’Car,汽车有一个'Engine
,引擎有一个GearBox
,齿轮箱有一些你感兴趣的属性,例如NumberOfGears
.现在,汽车可能来自垃圾场和变速箱甚至发动机都可能丢失(“null”).
** 如何确定给定车辆的齿轮数量?**
指示
为Car
编写名为GetNumberOfGears
的扩展方法.如果缺少齿轮箱(或其他任何东西),此方法将返回齿轮箱的"NumberOfGears"属性值或"-1".
约束
找到一些关于?.
和??
运算符的信息,并尝试编写没有任何if
或条件运算符?:
的方法.
引用
- 空条件运算符(?.)
- Null-coalescing operator(??)
- [条件运算符(??)(https://msdn.microsoft.com/en-us/library/ty67wk28%28v=