0
while (head <= tail) {
if (Choice == possibleNumbers[(head + tail)/2]) {
foundNumber = true;
break;
}
else if (Choice < possibleNumbers[(head + tail)/2]) {
tail = (head + tail)/2 - 1;
}
else
head = (head + tail)/2 + 1;
}
return foundNumber;
}
这是我在课堂上做过的一个数字搜索实验室的一部分。我很想在Java中缩短这个while循环。有关我应该如何做的任何提示?
我投票关闭这一问题作为题外话,因为工作的代码审查请求应该去codereview.stackexchange.com – GhostCat
[Java命名约定(http://stackoverflow.com/documentation/java/2697/ oracle-official-code-standard/9031/naming-conventions#t = 201611210634432178081)表示'Choice'应该被命名为'choice'。 – Andreas
这个问题不是真正的格式化,而是违规。我应该清理它并应用清洁代码。我在条件内部有一个复杂的计算,这违反了Clean Code。我如何使它不那么复杂? –