我经常使用这种代码模式:
while(true) {
//do something
if(<some condition>) {
break;
}
}
另一个程序员告诉我,这是一个不好的做法,我应该用更标准的方法来替代它:
while(!<some condition>) {
//do something
}
他的理由是,你可以很容易地“忘记休息”,并有一个无休止的循环。我告诉他,在第二个例子中,你可以很容易地放入一个条件,这个条件永远不会返回 true,所以很容易就会有一个无穷无尽的循环,所以两者都是同样有效的实践。
此外,我通常更喜欢前者,因为当您有多个断点时,它使代码更容易阅读,也就是说,多个不在循环中的条件。
有人能通过为一方或另一方添加证据来丰富这一论点吗?