Java在循环之前或循环中声明变量之间的区别?

我一直想知道,一般而言,在循环之前声明一个扔掉的变量(而不是在循环内部重复)是否会产生(性能)差异?Java中的一个例子(毫无意义):

a)循环前声明:

double intermediateResult;

for(int i=0; i < 1000; i++){

intermediateResult = i;

System.out.println(intermediateResult);

}

b)循环内的声明(反复):

for(int i=0; i < 1000; i++){

double intermediateResult = i;

System.out.println(intermediateResult);

}

a或b哪个更好?

我怀疑重复变量声明(示例b)在理论上会产生更多开销,但是编译器足够聪明,因此无关紧要。示例b的优点是更紧凑,并将变量的范围限制在使用它的地方。尽管如此,我还是倾向于根据示例a进行编码。

回答:

a或b哪个更好?

从性能角度来看,您必须对其进行评估。(而且我认为,如果您可以衡量差异,那么编译器就不是很好)。

从维护的角度来看,b更好。在尽可能小的范围内,在同一位置声明和初始化变量。不要在声明和初始化之间留有缝隙,也不要污染不需要的名称空间。

以上是 Java在循环之前或循环中声明变量之间的区别? 的全部内容, 来源链接: utcz.com/qa/422337.html

回到顶部