gpt4 book ai didi

java - 在循环内创建对象与在循环之前创建一个临时对象

转载 作者:行者123 更新时间:2023-12-01 06:39:06 26 4
gpt4 key购买 nike

这是我质疑的代码

        for (int i = 0; i < this.options.size(); i++) {
RadioButton butt = this.options.get(i);
//do something with butt
}

如果我将其更改为:

,我会获得巨大的性能提升吗?
        RadioButton butt;
for (int i = 0; i < this.options.size(); i++) {
butt = this.options.get(i);
//do something with butt
}

编辑:如果此代码每秒执行 30-50 次,选项 大小约为 20,情况如何?

最佳答案

对于所有现实的、可测量的情况,两者的性能绝对没有区别。事实上,我很确定(诚然我不确定)它们会导致完全相同数量的作业和引用创建。对于 JVM 来说创建 N 个引用持有者是愚蠢的。它只会重用第一次迭代期间创建的那个,只需在下一次分配中为其提供引用即可。这意味着这两种情况都只使用一个引用持有者(假设这是真的)。​​

关于java - 在循环内创建对象与在循环之前创建一个临时对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19846061/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com