高人来解释一下,为什么有人推荐“不要在循环体内定义变量
这帖子已经这么久了,还没结。
kypfos(不在寻梦) 的回复最能说明问题:循环体外定义变量不会给循环带来任何性能上的提高。如果一定要追究性能的话,在循环体内定义反而更容易让 GC 回收。
kaper3() 的回复同样说明了,即使是 C 语言,也会对这样的情况作“优化”,不存在性能上的区别。
出于在作用域内定义变量的原则,以及考虑代码的可读性,在循环体内定义更加合适。
这帖子已经这么久了,还没结。
kypfos(不在寻梦) 的回复最能说明问题:循环体外定义变量不会给循环带来任何性能上的提高。如果一定要追究性能的话,在循环体内定义反而更容易让 GC 回收。
kaper3() 的回复同样说明了,即使是 C 语言,也会对这样的情况作“优化”,不存在性能上的区别。
出于在作用域内定义变量的原则,以及考虑代码的可读性,在循环体内定义更加合适。