8

我们什么时候使用循环半?另外,是否应该有人简要说明如何编写其代码?

4

2 回答 2

10

您使用循环半来避免从循环外部到内部重复代码。例子:

read a;
while a != b do
  stuff;
  read a;
end

变成

while true do
  read a
  if a == b then break
  stuff;
end

现在我只在一个地方阅读。

于 2012-05-26T16:27:22.757 回答
2

顺便说一句,我想补充一点,a与替代情况相比,变量的范围(假设在这个习语中是一个局部变量)被最小化了,a即使在 while 循环终止后仍然在范围内。尽可能减少局部变量的范围被认为是一种好的做法(Josh Bloch,Effective Java,Item 45)。

于 2012-05-26T16:41:00.940 回答