|
|
1
15
然后写下:
关键是扩展方法甚至可以在空引用上被调用。 最好是一个“空安全解引用”操作符,这样我们就可以写:
或者只是定义一个
|
|
|
2
3
你可以使用 Coalesce
…氧气将被返回。 因此,您可以将原始代码示例重新编码为
然而,我个人并不介意筑巢。发生了什么事马上就清楚了。我发现Coalesce操作符更难理解,而这个小嵌套对于清晰性来说是一个很小的代价。 |
|
|
3
2
我喜欢更少的筑巢,对我来说它读起来更好。请不要转到:) 我保持方法简短,因此通常是对该场景的返回。
如果需要更多的内容,这些内容都是简单的语句,并且可以在foreach之前完成,那么您可以:
如果上述情况并非如此,则该方法可能太长,而且其中一些方法可能会被移走。可能:
|
|
|
4
0
就我个人而言,我可能会离开你的结构。 第一个选项(itm=itm==null?itm.subItems():emptyArray)似乎没有其他选项那么令人讨厌,但我还是更喜欢你原来的选项。 问题是,从另一个开发人员的角度来看,其他任何东西都会使代码不那么明显。如果有一个foreach在一个集合中运行,我希望该集合(至少在正常情况下)中包含项。如果集合可以是空的,那么对于没有注释的其他人来说,这是不明显的(这比If检查花费的时间更长)。 做任何一个黑客来避免if检查似乎你太聪明了。 |
|
|
A B · C#Excel自动调整列避免长文本时出错 1 年前 |
|
|
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 1 年前 |
|
Aycon · 在工厂方法中释放部分创建的对象的正确方法是什么? 1 年前 |
|
|
Sei · Avalonia/WPF将路由器传递到控制模板 1 年前 |