其中哪一个对可维护性更好?
if (byteArrayVariable != null)
if (byteArrayVariable .Length != 0)
//Do something with byteArrayVariable
要么
if ((byteArrayVariable != null) && (byteArrayVariable.Length != 0))
//Do something with byteArrayVariable
我更喜欢阅读和编写第二篇文章,但我想起在代码中阅读完整内容是,这样做不利于可维护性。
这是因为if
如果第一部分为假,并且并非所有语言都这样做,则您依赖语言来不评估第二部分。(第二部分如果使用null评估,将引发异常byteArrayVariable
。)
我不知道这是否真的值得担心,我想就这个问题提供一般反馈。
谢谢。
&&
和||
操作员执行短路评估充满信心。从一种语言切换到另一种语言通常会有些麻烦,因此一定要坚定地进行代码审查以帮助发现这些小问题。