我可以选择重写以下代码段以消除A点和B点的代码重复:
var value = source.GetNext(); // A
while (value != -1)
{
sum += value;
value = source.GetNext(); // B
}
使用中间循环中断重写不可接受:
while (true)
{
int value = source.GetNext();
if (value == -1) break;
sum += value;
}
答案 0 :(得分:12)
轻松的peasy:)
while ((value = source.GetNext()) != -1)
{
sum += value;
}