在循环之前或在循环中声明变量之间的区别?
2022-08-31 04:56:16
我一直想知道,一般来说,在循环之前声明一个丢弃变量,而不是在循环内重复,是否会产生任何(性能)差异?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进行编码。
编辑:我对Java案例特别感兴趣。