我正在解决问题,我需要尽可能地优化代码。
我有一个循环,需要进行一些计算,并且需要向数组中添加元素以进行进一步的计算:
for (int i = 0; i < lightCount; i++) {
int dis = in.nextInt();
int dur = in.nextInt();
double unit = distance / duration * 3.6;
array[i] = unit;
if (speed < unit) {
double n = unit / (2 * speed);
if (!((n - (int) n) == 0))
n = n + 1;
int tmp = (int) (unit / (2 * (int) n));
if (tmp < answer)
answer = tmp;
}
}
在以下情况中哪一种是最好的:
unit
或直接访问数组(将unit
替换为array[i]
)n
并将其替换为公式答案 0 :(得分:0)
这没关系。
这仅在您在计算中调用函数并多次使用同一表达式时才重要。在这种情况下,没关系。
这无关紧要。为了提高可读性,您可能希望将不同的功能拆分为不同的功能。
编辑:IO通常是瓶颈。 in.nextInt()有什么作用?您可以将其移出循环吗?