抱歉这个愚蠢的问题.
假设我有这个类(代码在C#中):
class Foo {
public List<string> Bars { get; set; }
public Foo() { }
}
Run Code Online (Sandbox Code Playgroud)
现在我想实现一个在Bars上执行某些操作的方法,例如Foo.Translate().
我是否应该始终检查我尝试访问/修改的内容是否为空或有效?
class Foo {
public List<string> Bars { get; set; }
public Foo() { }
public void Translate()
{
// Should I check with a null && count > 0?
if (Bars != null && Bars.Count > 0)
{
[...]
}
}
}
Run Code Online (Sandbox Code Playgroud)
这取决于.
如果值为null且不应该是,则显然出现了问题,无论您正在做什么,现在都是无效的情况,并且无论如何都会给您错误的结果.让它抛出异常.检查日志以找出它为空的原因,并修复该错误.
如果值为null的有效方案,则执行您正在执行的操作是合适的.
| 归档时间: |
|
| 查看次数: |
62 次 |
| 最近记录: |