你好我在想什么是更好的写(速度和/或效率):
bool Method(...) { ... } ... bool result = Method(...); if (result == false) { ... } // or if (!result) { ... }
或者,或者......
if (result == true) // or if (result)
我问,因为我使用第一个(result == false
)但有时它会变得很长,尤其是在condition ? expr : expr
语句中.
就个人而言,只要我看到类似的东西,我就会畏缩result == false
.在我看来,这是一个相当讨厌的平等操作符误用,完全没必要.虽然我认为编译器应该将两个表达式转换为相同的字节代码,但您肯定希望使用它!result
.实际上,它不仅是更直接和逻辑的表达,而且正如您所提到的,使代码更简洁,更易读.我认为绝大多数C#编码员都会在这一点上与我达成一致.