加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 提前创建变量以在循环中使用(?)

发布时间:2020-12-15 08:45:15 所属栏目:Java 来源:网络整理
导读:这两者中哪一个更“有效”: for (int i = 0; i 10; i++) { int x = i * 2;} 要么 – int x;for (int i = 0; i 10; i++) { x = i * 2;} (只是一个例子) 我知道它们本质上是不同的 – 所以请不要解决它们的使用差异. 如果两者都证明做同样的事情 – 多次创建x
这两者中哪一个更“有效”:

for (int i = 0; i < 10; i++) {
    int x = i * 2;
}

要么 –

int x;
for (int i = 0; i < 10; i++) {
    x = i * 2;
}

(只是一个例子)

我知道它们本质上是不同的 – 所以请不要解决它们的使用差异.

如果两者都证明做同样的事情 – 多次创建x变量是一种效率较低的方法,而不是仅创建一次并简单地重新分配它的值?

解决方法

不,在这种情况下,使用编译器的方式,没有性能差异.

从可读性的角度来看,我更喜欢第一种方法,但这是其他地方要讨论的内容.

但是,作为这个答案的奖励部分:

for (int x = 0; x < calculateUserCountFromDatabaSEOrSomething(); x++) {
   //Do stuff
}

在上面的例子中,这将是一个性能问题,因为将在循环的每次迭代中调用calculateUserCountFromDatabaSEOrSomething()方法.在编写软件时,这是必须要考虑的事情.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读